2011-04-02 133 views
0

我最近更新我的生鏽Ç技巧,我一直在試圖找到一個項目,嘗試出來的,所以我選擇了內核開發(畢竟,C是一種系統語言)。那麼,我想知道哪一個更容易開始,Linux或者其中一個BSD? Linux有一個更大的用戶羣(所以我可能會有更多的支持),但它也有一個巨大的代碼庫(上次我檢查了900萬行),BSD會更容易開始,因爲它們將用戶基和內核合併爲一個龐大的代碼庫?另外,最好是剛開始閱讀內核源代碼?而且,他們是否試圖實施SMP和新驅動程序之外的新功能?LINUX VS BSD內核開發

+0

爲什麼投票下來?我認爲這個問題非常具體。 – 2011-04-02 23:37:26

回答

3

我使用,併爲Linux多年的發展,但我缺乏與BSD任何實際經驗來推薦兩種方式。

你的聲音缺少內核黑客經驗。只是閱讀內核源代碼可能很有洞察力,但並不會真正教會你。除了驅動程序之外,Linux內核中還有很多。例如,最新的2.6.38專注於桌面響應。 DRM堆棧不斷變化,可以使用更多的人力。
我會建議開始輕鬆,beta驅動程序等的小修補程序等。

+0

當你說我缺乏經驗時,你的意思是內核黑客攻擊還是C和一般編程? – 2011-04-02 15:29:23

+0

我不知道你的C語言技能,以及你對linux的熟悉程度。我在談論Linux內核,內核黑客和編程。儘管如此,有關於Linux內核黑客的資源,只是搜索網絡,它應該讓你開始。 – ssteinberg 2011-04-02 15:36:01

4

不幸的是,我只能說自己的Linux內核黑客攻擊。目前我正在一個實習中從事內核工作,而我從來沒有這樣做過。但是由於幾個原因,我能夠在很短的時間內學到很多東西(同樣,我想指出,我不知道他在BSD社區覆蓋了多少):

  • 教程。 Linux社區是相當大的,因此你會發現很多關於內核黑客的初學者信息。我覺得開始的標準是this guide。如果你讀它,你會看到,即使內核黑客與世界你好啓動;)
  • Linux Cross Reference。一個偉大的工具。它涵蓋了完整的香草源代碼,並顯示了每個功能/結構/定義/任何定義和實施,所以沒有長在尋找一些東西
  • 了Linux的模塊化版本(我假設同樣適用於BSD)顯然你將無法查看9百萬行代碼。但是你可以從一個可加載的內核模塊開始,然後再深入。也許看看其他模塊首先,入侵它們,並最終挖掘到直接編譯的東西
  • 龐大社區的規模。不僅內核郵件列表,而且論壇或Q &一個個這樣的網站之一,您可一定要得到幫助,如果你不知道該怎麼辦的數量龐大;)

只是我的2美分;)