我最近更新我的生鏽Ç技巧,我一直在試圖找到一個項目,嘗試出來的,所以我選擇了內核開發(畢竟,C是一種系統語言)。那麼,我想知道哪一個更容易開始,Linux或者其中一個BSD? Linux有一個更大的用戶羣(所以我可能會有更多的支持),但它也有一個巨大的代碼庫(上次我檢查了900萬行),BSD會更容易開始,因爲它們將用戶基和內核合併爲一個龐大的代碼庫?另外,最好是剛開始閱讀內核源代碼?而且,他們是否試圖實施SMP和新驅動程序之外的新功能?LINUX VS BSD內核開發
回答
我使用,併爲Linux多年的發展,但我缺乏與BSD任何實際經驗來推薦兩種方式。
你的聲音缺少內核黑客經驗。只是閱讀內核源代碼可能很有洞察力,但並不會真正教會你。除了驅動程序之外,Linux內核中還有很多。例如,最新的2.6.38專注於桌面響應。 DRM堆棧不斷變化,可以使用更多的人力。
我會建議開始輕鬆,beta驅動程序等的小修補程序等。
當你說我缺乏經驗時,你的意思是內核黑客攻擊還是C和一般編程? – 2011-04-02 15:29:23
我不知道你的C語言技能,以及你對linux的熟悉程度。我在談論Linux內核,內核黑客和編程。儘管如此,有關於Linux內核黑客的資源,只是搜索網絡,它應該讓你開始。 – ssteinberg 2011-04-02 15:36:01
不幸的是,我只能說自己的Linux內核黑客攻擊。目前我正在一個實習中從事內核工作,而我從來沒有這樣做過。但是由於幾個原因,我能夠在很短的時間內學到很多東西(同樣,我想指出,我不知道他在BSD社區覆蓋了多少):
- 教程。 Linux社區是相當大的,因此你會發現很多關於內核黑客的初學者信息。我覺得開始的標準是this guide。如果你讀它,你會看到,即使內核黑客與世界你好啓動;)
- Linux Cross Reference。一個偉大的工具。它涵蓋了完整的香草源代碼,並顯示了每個功能/結構/定義/任何定義和實施,所以沒有長在尋找一些東西
- 了Linux的模塊化版本(我假設同樣適用於BSD)顯然你將無法查看9百萬行代碼。但是你可以從一個可加載的內核模塊開始,然後再深入。也許看看其他模塊首先,入侵它們,並最終挖掘到直接編譯的東西
- 龐大社區的規模。不僅內核郵件列表,而且論壇或Q &一個個這樣的網站之一,您可一定要得到幫助,如果你不知道該怎麼辦的數量龐大;)
只是我的2美分;)
- 1. linux內核開發
- 2. 內核開發
- 3. Linux內核 - alloc_skb vs dev_alloc_skb vs netdev_alloc_skb
- 4. 使用linux進行Android內核開發
- 5. 使用KVM進行Linux內核開發
- 6. 在Python中開發Linux內核模塊
- 7. 使用Qemu進行Linux內核開發?
- 8. qemu中的x86 linux內核開發
- 9. Linux內核開發首選編輯器
- 10. Debian,make-kpkg和Linux內核開發
- 11. 設置Netbeans/Eclipse的Linux內核開發
- 12. Linux內核函數和內核模塊開發
- 13. 其他內核的Linux內核模塊開發編譯
- 14. bsd內核用戶空間事件kqueue
- 15. 當使用Linux內核add_timer VS queue_delayed_work
- 16. 協作內核開發
- 17. iOS內核開發
- 18. 如何開始使用Linux內核開發
- 19. 如何開始開發和調試Linux內核?
- 20. 瞭解linux或BSD內核內部結構的最佳方式是什麼?
- 21. 針對linux內核開發的發行版
- 22. Linux內核add_timer
- 23. 展開陣列Linux內核模塊
- 24. 解開Linux內核調度程序
- 25. 從哪裏開始linux內核編程?
- 26. Linux內核AIO,開放系統調用
- 27. virtualbox上的內核開發
- 28. 配置Eclipse for Linux內核模塊開發
- 29. 公司Linux內核開發的Git工作流程
- 30. 嵌入式linux/android內核開發工作流程
爲什麼投票下來?我認爲這個問題非常具體。 – 2011-04-02 23:37:26