歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Linux 3.0:內核開發的模式與現狀

Linux 3.0:內核開發的模式與現狀

日期:2017/2/25 11:54:30   编辑:關於Linux

  2011年7月22日,Linus親自發布了Linux Kernel 3.0版本。雖然從內核的更新內容上跟普通的2.6.40沒什麼兩樣,不過版本號的修改,無疑在Linux內核20周年之際,被賦予了特殊的意義。

  20年走來,Linux內核早已不是一開始Linus單打獨斗開發的模式。各個Linux相關企業的開發者和很多單獨的、因為愛好而參與的開發者都被有序的組織在一起。

  下面,我們將以Linux Kernel 3.0為例,介紹一下現在的Linux內核是如何開發的。

  主干負責人:Linus Torvalds

  當下,Linux內核版本眾多,每個主版本都有一個專人負責維護,叫做Maintainer。比如Kernel 2.6.32的負責人是Greg Kroah-Hartman(目前在Novell任職),Kernel 2.6.35的負責人是Andi Kleen(曾在Novell任職,目前在Intel開源技術中心)。而按照慣例,每一個最新的主分支,都是由Linus本人進行維護和發布。Linux 3.0也不例外。

  Maintainer的主要工作是將其他開發者提供的代碼和補丁集成到一起,並在發布前測試修改各種bug。

  其他分支負責人

  其實Linux內核的開發模式就是一個樹狀模式,使用過Git的開發者們應該會比較了解。一般來說,開發者們如果要對Linux內核做一些修改,那麼他首先會在Git上將Linus的主干代碼復制一份,形成自己的分支。在Git系統上,每個開發者在建立的分支上進行的每一個變更都有一個單獨的ID,當開發者認為自己進行的變更沒有問題的時候,可以申請讓主要分支的負責人將自己的變更“拉”入其負責的分支當中。

  說到這裡就要說一下Linux內核目前的幾個分支。最新的分支mainline裡面包含最新的特性,但是由於缺乏測試,並不建議在生產環境中使用;標注stable的分支則是每一個之前發布的版本都有,進入stable之後的版本只會進行安全補丁和bug更新,不會再添加任何新特性。另外還有snapshot、linux-next等分支,裡面包含了很多比較新的變更。大部分Linux發行版包含的內核都是來自stable分支,而有些發行版則會在這些分支上進行一些定制(比如紅帽和Debian),當然也會有自己的負責人。

  可以說,Linux內核開發的分工模式就像一棵樹一樣,每一個開發者都有一條自己的分支,而且每一條分支都和主干有直接的聯系。

  所以,Linux內核的開發者社區其實是一個扁平的結構,除了幾條主干的負責人之外,其他上千開發者並沒有什麼明確的分工,大家主要以“為Linux內核貢獻了多少代碼”作為貢獻多少的判定——也就是說,你有多少代碼被接受並入了mainline或stable分支當中,你就是更加重量級的開發者。無論你的代碼是關於CPU、顯卡、網卡、虛擬化還是別的什麼,全部一視同仁(當然,在主干維護者那裡會有自己的優先級)。

  就Linux 3.0而言,在負責人Linus之下,開發者們以代碼貢獻情況的排名列表是:

Linux 3.0:內核開發的模式與現狀

上一頁123下一頁查看全文 內容導航
  • 第1頁:負責人貢獻排名
  • 第2頁:開發者來自的公司
  • 第3頁:好事還是壞事?
Copyright © Linux教程網 All Rights Reserved