2010年度報(bào)告:是誰(shuí)在編寫(xiě)Linux內(nèi)核?
原創(chuàng)【51CTO精選譯文】Linux開(kāi)發(fā)人員繼續(xù)以快速的步伐推出新內(nèi)核,但根據(jù)Linux基金會(huì)最近發(fā)布的一份報(bào)告顯示,在過(guò)去的一年里,新代碼的提交步調(diào)明顯變慢了。該報(bào)告還指出,Linux內(nèi)核開(kāi)發(fā)的杰出貢獻(xiàn)者也在發(fā)生變化,越來(lái)越多的移動(dòng)開(kāi)發(fā)人員加入到Linux內(nèi)核開(kāi)發(fā)隊(duì)伍,這是Linux基金會(huì)第三次年度“誰(shuí)在寫(xiě)Linux”報(bào)告(報(bào)告PDF下載地址),總結(jié)了過(guò)去一年來(lái)Linux內(nèi)核的進(jìn)展情況。
51CTO推薦專題:Ubuntu 11.04——敏捷的獨(dú)角鯨
根據(jù)2010年“誰(shuí)在寫(xiě)Linux”報(bào)告顯示,提交給2.6.35內(nèi)核的代碼量比去年發(fā)布的2.6.30內(nèi)核的代碼量少18%,過(guò)去一年來(lái)提交的內(nèi)核代碼減少的原因很多,包括階段代碼新的提交流程。
Linux基金會(huì)市場(chǎng)營(yíng)銷和開(kāi)發(fā)計(jì)劃副總裁,報(bào)告的合著者Amanda McPherson說(shuō):“我認(rèn)為階段樹(shù)不是簡(jiǎn)單的代碼增加,也不是在以前的版本上簡(jiǎn)單的膨脹”。(51CTO編輯注:樹(shù)/tree是軟件開(kāi)發(fā)過(guò)程中的一個(gè)常用語(yǔ)。尤其在開(kāi)源項(xiàng)目中,由于代碼來(lái)自很多開(kāi)發(fā)者,因此就有一個(gè)代碼層層加入主代碼庫(kù)的過(guò)程,感覺(jué)好像樹(shù)一樣的結(jié)構(gòu))
報(bào)告解釋了從2.6.28內(nèi)核開(kāi)始的代碼階段樹(shù)。最初的狀態(tài)樹(shù)啟動(dòng)了一個(gè)進(jìn)程,將大量樹(shù)外的代碼合并到主Linux內(nèi)核中。根據(jù)今年的報(bào)告顯示,從2.6.31開(kāi)發(fā)周期可以看出,因積壓下來(lái)的大量代碼需要處理,這一進(jìn)程就放慢了。報(bào)告還指出,新的驅(qū)動(dòng)程序經(jīng)由階段樹(shù)源源不斷進(jìn)入主Linux內(nèi)核。
雖然新代碼的提交步伐和去年相比不在同一水平,但整體來(lái)看進(jìn)展還是不錯(cuò)。報(bào)告指出,自2.6.30內(nèi)核開(kāi)始,每天有9058行代碼添加到Linux內(nèi)核,包括周末和節(jié)假日。
過(guò)去五年半以來(lái),從2005年的2.6.11內(nèi)核到2010年的2.6.35內(nèi)核,平均每一小時(shí)就會(huì)有4.02個(gè)補(bǔ)丁應(yīng)用到內(nèi)核樹(shù)上。
內(nèi)核發(fā)布后,就進(jìn)入維護(hù)期,根據(jù)需要更新補(bǔ)丁。有些版本的內(nèi)核更新補(bǔ)丁會(huì)多一點(diǎn),如2.6.32內(nèi)核是過(guò)去五年來(lái)更新補(bǔ)丁最多的一個(gè)版本(報(bào)告指出2.6.32內(nèi)核總共有1793個(gè)修復(fù)補(bǔ)?。?。McPherson指出,Linux 2.6.32內(nèi)核經(jīng)過(guò)長(zhǎng)時(shí)間的補(bǔ)丁修復(fù),現(xiàn)在正穩(wěn)定更新中。
McPherson說(shuō):“2.6.32內(nèi)核已經(jīng)用在RHEL 6,SLES11中,如果我沒(méi)記錯(cuò)的話,有一個(gè)Ubuntu LTS發(fā)行版也使用了它,因此這個(gè)版本的內(nèi)核得到了大家持續(xù)的關(guān)愛(ài),2.6.32現(xiàn)在仍然在更新,而比它高一個(gè)版本的2.6.33-35已停止更新”。
誰(shuí)是內(nèi)核貢獻(xiàn)者?
正如最近五個(gè)內(nèi)核版本提交的代碼數(shù)量下降一樣,為L(zhǎng)inux內(nèi)核貢獻(xiàn)代碼的企業(yè)數(shù)量也在下降。2.6.30內(nèi)核已知的代碼貢獻(xiàn)企業(yè)是245家,但到2.6.35版本時(shí),貢獻(xiàn)代碼的企業(yè)數(shù)量就下降到184了。
一些知名的Linux內(nèi)核代碼貢獻(xiàn)企業(yè)也發(fā)生了細(xì)微的變化。
- 貢獻(xiàn)最多的仍然要數(shù)Red Hat,2.6.30內(nèi)核有12%的代碼變化都是Red Hat貢獻(xiàn)的
- 英特爾次之,貢獻(xiàn)了7.8%
- Novell貢獻(xiàn)了5%
- IBM貢獻(xiàn)了4.8%
McPherson說(shuō):“今年報(bào)告中的數(shù)字正如我們預(yù)料的一樣,我很高興地看到贊助內(nèi)核開(kāi)發(fā)的頂級(jí)企業(yè)發(fā)生了變化,移動(dòng)/嵌入式開(kāi)發(fā)公司表現(xiàn)得越來(lái)越活躍”。
從2.6.30內(nèi)核開(kāi)始,諾基亞貢獻(xiàn)了2.3%的代碼,德克薩斯儀器提交了1.5%的代碼,無(wú)線廠商Atheros添加了1.4%的Linux內(nèi)核代碼。
相反,Ubuntu Linux背后的Canonical在最近五個(gè)Linux內(nèi)核版本中所做的貢獻(xiàn)卻很少。
McPherson說(shuō):“如果你仔細(xì)查看日志,就會(huì)發(fā)現(xiàn)Canonical從2.6.30內(nèi)核以來(lái),總共提交了109個(gè)補(bǔ)丁,占總量的0.2%,排在所有貢獻(xiàn)企業(yè)的第62位”。
【編輯推薦】
- 1996-2010:那些重要的Linux系統(tǒng)病毒們
- 小補(bǔ)丁 大改善 Linux內(nèi)核新補(bǔ)丁
- 紅帽RHEL團(tuán)隊(duì):操作系統(tǒng)也可以按摩爾定律發(fā)展