成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux 3.0:內(nèi)核開發(fā)的模式與現(xiàn)狀

原創(chuàng)
系統(tǒng) Linux
2011年7月22日,Linus親自發(fā)布了Linux Kernel 3.0版本。雖然從內(nèi)核的更新內(nèi)容上跟普通的2.6.40沒什么兩樣,不過版本號的修改,無疑在Linux內(nèi)核20周年之際,被賦予了特殊的意義。本文中,我們將以Linux Kernel 3.0為例,介紹一下現(xiàn)在的Linux內(nèi)核是如何開發(fā)的。

【51CTO獨家特稿】2011年7月22日,Linus親自發(fā)布了Linux Kernel 3.0版本。雖然從內(nèi)核的更新內(nèi)容上跟普通的2.6.40沒什么兩樣,不過版本號的修改,無疑在Linux內(nèi)核20周年之際,被賦予了特殊的意義。

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

下面,我們將以Linux Kernel 3.0為例,介紹一下現(xiàn)在的Linux內(nèi)核是如何開發(fā)的。

主干負責人:Linus Torvalds

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

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

其他分支負責人

其實Linux內(nèi)核的開發(fā)模式就是一個樹狀模式,使用過Git的開發(fā)者們應(yīng)該會比較了解。一般來說,開發(fā)者們?nèi)绻獙inux內(nèi)核做一些修改,那么他首先會在Git上將Linus的主干代碼復(fù)制一份,形成自己的分支。在Git系統(tǒng)上,每個開發(fā)者在建立的分支上進行的每一個變更都有一個單獨的ID,當開發(fā)者認為自己進行的變更沒有問題的時候,可以申請讓主要分支的負責人將自己的變更“拉”入其負責的分支當中。

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

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

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

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

Linux 3.0開發(fā)者們以代碼貢獻情況的排名列表
圖片來源

左側(cè)列表以提交變更的個數(shù)排名,右側(cè)列表以提交變更的代碼行數(shù)排名。簡單的介紹一下名單里部分開發(fā)者的背景:

K.Y.Srinivasan

目前就職微軟,貢獻的變更主要針對Hyper-V虛擬驅(qū)動。雖然總共提交的變更數(shù)高居榜首(343個),但更改的代碼數(shù)量只有11564行,因此在右側(cè)列表當中排名靠后。

David Miller

目前就職紅帽,貢獻的變更主要針對網(wǎng)絡(luò)子系統(tǒng)。

Dan Williams

目前就職于紅帽,貢獻的變更主要針對英特爾isci存儲驅(qū)動,總共82466行代碼。

Jonathan Cameron

目前在英國劍橋大學(xué)從事研究,貢獻的變更主要針對工業(yè)化I/O(iio)子系統(tǒng)。

Takashi Iwai

目前就職于Novell SUSE部門,貢獻的變更主要針對ALSA聲卡驅(qū)動子系統(tǒng)。

Larry Finger

目前就職于Web托管網(wǎng)站Lwfinger.net,貢獻的變更主要在于精簡了rt2860sta和rt2870sta驅(qū)動的大量代碼。

Dmitry Kravkov

目前就職于Broadcom,貢獻的變更主要在于bnx2x驅(qū)動固件的更新。

Vasanthakumar Thiagarajan

目前就職于Atheros,貢獻的變更主要在于精簡了Atheros無線驅(qū)動的大量代碼。

Mauro Carvalho Chehab

目前就職于紅帽,貢獻的變更主要在于移除了古老的Micronas drx397xD驅(qū)動的代碼。

這樣一看,好像主要參與的開發(fā)者都來自Linux相關(guān)的公司;事實上也的確如此。在參與Linux 3.0開發(fā)的184名開發(fā)者當中,大多數(shù)來自下面列表中的幾家公司:

參與Linux 3.0開發(fā)的企業(yè)
圖片來源) 

相比之前版本的開發(fā)者參與情況,微軟貢獻代碼數(shù)量攀升令很多人感到驚奇,不過考慮到Hyper-V應(yīng)該沒有那么多的變更需求,這種情況可能以后不會多見;來自非企業(yè)的開發(fā)者比重則在繼續(xù)減少。

好事還是壞事?

站在商業(yè)化社會的角度看來,更多的企業(yè)雇員因為工作相關(guān)的原因參與Linux內(nèi)核開發(fā)并非是一件壞事,這表示Linux內(nèi)核作為商品的價值和可持續(xù)性。

然而這樣的后果就是,主分支對于變更的傾向性會越來越嚴重。這一點可以從最近退出Linux內(nèi)核開發(fā)的愛好者Con Kolivas的專訪內(nèi)容看出來。

Con Kolivas是一個典型的Linux愛好者,其本職工作在醫(yī)院,和Linux開發(fā)沒有任何關(guān)系。根據(jù)Con Kolivas的描述,他因為一開始使用Linux桌面遇到很大的性能問題而參與到社區(qū)當中,并開始自己學(xué)習(xí)內(nèi)核開發(fā);他編寫的很多補?。俗閏k的patch)都是針對Linux桌面性能優(yōu)化的,而且在Linux桌面用戶當中有很多受眾;但是,這些補丁很少被并入到主分支當中去,因為分支維護者總是說有其他更加緊急重要的補丁需要拉入。Con Kolivas感覺終端用戶在Linux內(nèi)核開發(fā)的社區(qū)里面根本不受到重視,最終由于這份失落感而決定退出。

從宏觀的角度來看,Linux的主要應(yīng)用領(lǐng)域在服務(wù)器,因此分支維護者將網(wǎng)絡(luò)、存儲、虛擬化驅(qū)動等補丁排在較高的優(yōu)先級自然是無可厚非。不過從Linux桌面的角度來看,這樣的發(fā)展方向無疑是很不利的,而發(fā)行版的開發(fā)者不得不自己想辦法解決終端用戶在桌面系統(tǒng)上的一些底層問題。

這就引申到了另一個方向:在Linux桌面領(lǐng)域,我們需要一個與Linux內(nèi)核領(lǐng)域不一樣的貢獻體系。在這條路上,已經(jīng)有先行者進行了嘗試,具體情況請看下文分解——《跳出Linux內(nèi)核的圈子:看Ubuntu的另類之路》。

【編輯推薦】

  1. Linux桌面應(yīng)用的未來在哪里?(問題篇)
  2. Linux社區(qū)面面觀:Debian社區(qū)的那些事兒
  3. 首款3.0新內(nèi)核Linux發(fā)行版迅速誕生
  4. 微軟: Linux 第五大企業(yè)支持者
  5. 2010年度報告:是誰在編寫Linux內(nèi)核?
責任編輯:yangsai 來源: 51CTO.com
相關(guān)推薦

2018-12-27 10:56:04

Linux內(nèi)核現(xiàn)狀

2012-04-11 09:26:13

內(nèi)核Linux 開發(fā)

2017-03-27 18:05:49

Linux內(nèi)核編譯與開發(fā)

2009-12-14 14:43:50

Linux內(nèi)核

2011-02-21 09:10:42

WebHTML 5JavaScript

2009-07-07 09:25:08

Linux開發(fā)FOSS開發(fā)項目

2011-08-01 09:40:31

Linux 3.0 Fedora 15

2011-01-14 13:50:37

2018-11-13 12:52:50

Linux內(nèi)核?;厮?/a>

2010-04-21 12:54:46

Unix內(nèi)核

2018-05-18 09:07:43

Linux內(nèi)核內(nèi)存

2017-01-05 14:28:43

Linux內(nèi)核代碼源碼

2011-07-28 09:38:49

Linux 3.0

2012-02-07 16:01:35

Linux內(nèi)核Android

2010-01-06 16:47:53

Linux內(nèi)核

2009-09-14 09:42:55

LinuxR600內(nèi)核

2011-01-20 09:41:49

Linux 2.6.3

2010-02-26 10:17:15

Linux uClin

2011-07-05 15:27:41

LinusLinux內(nèi)核

2023-10-26 11:39:54

Linux系統(tǒng)CPU
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: av中文字幕在线 | 欧美黑人一区二区三区 | 91亚洲国产| 亚洲欧洲色视频 | 亚洲av一级毛片 | 国产精品乱码一区二三区小蝌蚪 | 99国内精品久久久久久久 | 亚洲a视频 | 日一区二区三区 | 青青草一区二区 | 久久精品免费看 | 国产成人精品在线播放 | 中文字幕一区二区三区四区 | 国产不卡一区 | aacc678成免费人电影网站 | 日韩精品在线一区 | 国产精品揄拍一区二区 | 免费看国产片在线观看 | 在线第一页 | 免费国产一区 | 国产美女精品视频 | 精品亚洲视频在线 | 四虎海外| 亚洲欧美中文日韩在线v日本 | 国产精品久久久久久久久久久久午夜片 | 欧美精品一区二区在线观看 | 免费同性女女aaa免费网站 | 成人av观看 | 成人福利网 | 久久精品亚洲 | www.五月天婷婷.com | 日韩在线一区二区三区 | 成年人网站免费视频 | 少妇无套高潮一二三区 | 成人久草 | 呦呦在线视频 | 久久r精品| av国产精品| 久久久久久久香蕉 | 日本一区二区高清视频 | 亚洲一区二区三区在线观看免费 |