1. gzyueqian
      13352868059

      Linux內(nèi)幕故事:灰頭發(fā)的人可以優(yōu)先修改內(nèi)核

      更新時(shí)間: 2008-02-23 09:06:47來(lái)源: 粵嵌教育瀏覽量:229

        2月21日消息,Linux內(nèi)核維護(hù)者Andrew Morton與騰訊科技展開對(duì)話。Andrew Morton半開玩笑的說(shuō),灰頭發(fā)的(人)——真的長(zhǎng)時(shí)間在內(nèi)核里做貢獻(xiàn)的在Linux內(nèi)核修改時(shí)得到優(yōu)先權(quán)。


        作為L(zhǎng)inux內(nèi)核維護(hù)者,Andrew的工作就是每天與來(lái)個(gè)各地的Linux社區(qū)溝通,平衡來(lái)自各方的代碼,決定哪些可以進(jìn)入內(nèi)核,哪些還需求修改。


        Andrew說(shuō),十年前,大部分Linux內(nèi)核貢獻(xiàn)人純粹是好玩,將自己希望貢獻(xiàn)到內(nèi)核。現(xiàn)在大部分的貢獻(xiàn)者背后是有支持的,但并專業(yè)沒(méi)有改變,改變的只是比例。而且與其他社區(qū)不同的是,Linux內(nèi)核工程師參與進(jìn)來(lái)后很少離開。這些年來(lái)任命采工具和方法論都在不停地優(yōu)化,但我們的產(chǎn)量始終都在提高。


        Andrew認(rèn)為,維護(hù)者不是獨(dú)裁者,而是一個(gè)法官,對(duì)于一個(gè)開源的項(xiàng)目它需要達(dá)到某個(gè)程度。寫成什么樣、格式怎么樣等。


        Andrew會(huì)告訴那些貢獻(xiàn)者,他們提供的代碼是否合乎法則。如果是不符合法則的話,告訴他哪里不對(duì)、為什么不對(duì),作為用戶來(lái)說(shuō)因?yàn)檫@個(gè)法則也不會(huì)跟維護(hù)者爭(zhēng)論,因?yàn)檫@是大家都知道規(guī)矩。



        在對(duì)話中,Andrew還透露,內(nèi)核維護(hù)者并沒(méi)有想象那么神秘,而且有大部分的內(nèi)核代碼現(xiàn)在是沒(méi)有維護(hù)者的,如果誰(shuí)想拿到內(nèi)核維護(hù)者也非常簡(jiǎn)單,難的地方是他要讓人家認(rèn)同他。

        Andrew舉例說(shuō),比方說(shuō)串口等甚至很多驅(qū)動(dòng)現(xiàn)在隨手可得,只要它走進(jìn)去說(shuō)我有足夠的實(shí)力、有足夠的代碼貢獻(xiàn),可以繼續(xù)維護(hù)這個(gè)代碼。(文/徐志斌 王恩斌)


        以下是Linux內(nèi)核維護(hù)者Andrew Morton與騰訊科技對(duì)話實(shí)錄:



        內(nèi)核的維護(hù)者如何決定內(nèi)核的增減


        騰訊科技:我們想了解您作為內(nèi)核的仲裁者,如何決定哪些代碼可以進(jìn)入內(nèi)核?

        Andrew:對(duì)我來(lái)說(shuō)有一個(gè)非常清晰的觀點(diǎn),作為一個(gè)維護(hù)者不是獨(dú)裁者,而是一個(gè)法官,對(duì)于一個(gè)開源的項(xiàng)目來(lái)說(shuō)有它的法則,需要達(dá)到某個(gè)程度。

        比如說(shuō)你的代碼應(yīng)該寫成什么樣、格式怎么樣等等,有一些開發(fā)規(guī)矩。我是看他對(duì)開源的貢獻(xiàn)是否合乎法則。如果是不符合法則的話,就會(huì)告訴他哪里不對(duì)、為什么不對(duì),作為用戶來(lái)說(shuō)因?yàn)檫@個(gè)法則也不會(huì)跟維護(hù)者爭(zhēng)論,因?yàn)檫@是大家都知道規(guī)矩,我其實(shí)是一個(gè)法官的角色。

        對(duì)于我來(lái)說(shuō)不希望看到的是,作為一個(gè)法官來(lái)判斷是進(jìn)去還是不進(jìn)去,而是希望每一個(gè)進(jìn)來(lái)的貢獻(xiàn)都能夠進(jìn)去。我更希望的是作為一個(gè)支持角色,把為什么你不能進(jìn)去、做什么樣的改動(dòng)然后進(jìn)去,希望我是能夠幫助貢獻(xiàn)者的角色。這個(gè)問(wèn)題問(wèn)的非常好。




        騰訊科技:您做維護(hù)內(nèi)核的工作有多久了?

        Andrew:我1999年開始貢獻(xiàn)開發(fā)Linux內(nèi)核,從2001年開始是內(nèi)核管理很大的貢獻(xiàn)者,2002年作為一個(gè)內(nèi)核管理者的委員。在內(nèi)核來(lái)說(shuō)我說(shuō)自己是一個(gè)新人,很多人在1999年前就開始做貢獻(xiàn)了。


        騰訊科技:在2002年剛開始做管理者時(shí),向您提交想進(jìn)內(nèi)核的程序的人多嗎,到現(xiàn)在有多少?

        Andrew:整體來(lái)說(shuō)是不斷增長(zhǎng)的。十年前,大部分貢獻(xiàn)人純粹是好玩,自己希望貢獻(xiàn)到內(nèi)核的態(tài)度。現(xiàn)在大部分的貢獻(xiàn)者背后是有支持的,有一些公司在支持他們的貢獻(xiàn)。但并不代表非專業(yè)的貢獻(xiàn)者少了,而是比例改變了。

        另外一個(gè)優(yōu)點(diǎn),內(nèi)核工程師參與進(jìn)來(lái)后很少離開了。我們現(xiàn)在采用的工具和方法論都在不停地優(yōu)化,就算人數(shù)沒(méi)有改變我們的產(chǎn)量還是高了。


        不是獨(dú)裁者是法官


        騰訊科技:2002年到現(xiàn)在比如說(shuō)同樣一個(gè)方案很多人提出來(lái),有多少種情況要在很多很知名的提案、社區(qū)中進(jìn)行選擇?

        Andrew:有兩個(gè)問(wèn)題,一個(gè)是個(gè)人與公司對(duì)內(nèi)核的改變,他們的參與會(huì)不會(huì)用錢或者是人來(lái)影響。企業(yè)基本上沒(méi)有人這么做,因?yàn)榇蠹乙仓婪椒ǎ粦?yīng)該這樣做,也很少采用這樣的方法。

        對(duì)個(gè)人來(lái)說(shuō),如果他非常有名或者是貢獻(xiàn)了很久的內(nèi)核工程師來(lái)說(shuō),本身作為可以更改內(nèi)核的代表,他們會(huì)更容易做到。如果真的不好的話我也讓他們離開。

        如果有兩個(gè)相同或者是相接近的功能都進(jìn)去的話,我采用的方法不是選一個(gè)或者選兩個(gè),而是盡可能把這兩個(gè)人拉在一起,讓他們來(lái)商量處理選擇什么樣的方法。


        騰訊科技:什么樣的人在加入內(nèi)核時(shí)有優(yōu)先級(jí)?像您或者是Linux之父具有優(yōu)先級(jí)?

        Andrew:灰頭發(fā)的會(huì)比較好一點(diǎn),真的是長(zhǎng)時(shí)間在內(nèi)核里做貢獻(xiàn)的。(笑)


        騰訊科技:您自己現(xiàn)在還寫代碼嗎?

        Andrew:很少,我也希望更多時(shí)間去寫代碼,但是機(jī)會(huì)很少,也可能幾個(gè)月有一段時(shí)間留給自己寫代碼的比例非常低。


        多版本是Linux的靈魂


        騰訊科技:近400個(gè)Linux版本,會(huì)不會(huì)給Linux的推廣和發(fā)展,包括企業(yè)在選用Linux時(shí)帶來(lái)困惑?分散的版本會(huì)不會(huì)讓Linux步入U(xiǎn)nix的后塵?

        Andrew:首先我不認(rèn)同會(huì)變成這樣。其次如果看清楚的話,那些發(fā)行版本整合后可以歸類為四五個(gè)主要的發(fā)行,有一些是變種。

        我更希望的是有一個(gè)具體的辦法,把不同版本都放在一個(gè)DVD或者是光盤里,我們作為L(zhǎng)inux廠商用同一個(gè)源來(lái)安裝,但是賣服務(wù)時(shí)賣給不同的人更好。

        發(fā)行商也不這么笨,他們也知道如果市場(chǎng)過(guò)渡分割會(huì)有問(wèn)題,有很多資源包括Linux標(biāo)準(zhǔn)組,從2.4到2.6,Suse、紅帽這些發(fā)行中間的差異還是比較大的,但差異慢慢會(huì)越來(lái)越小,兼容度會(huì)越來(lái)越高。


        騰訊科技:微軟很強(qiáng)大,但動(dòng)不動(dòng)會(huì)有嚴(yán)重的漏洞曝露出來(lái),我們說(shuō)互聯(lián)網(wǎng)很方便,但也是建立在很不安全的基礎(chǔ)之上,Linux在共用一個(gè)內(nèi)核,這個(gè)內(nèi)核足夠安全嗎?

        Andrew:微軟我不重點(diǎn)關(guān)注,純粹從Linux角度來(lái)看,也不是一個(gè)內(nèi)核這么簡(jiǎn)單的東西。

        內(nèi)核本身提供安全的架構(gòu)和框架,不同廠商根據(jù)這個(gè)框架,在這個(gè)基礎(chǔ)上建立不同的方案。紅帽采用了suse Linux,如果真的有一個(gè)攻擊出來(lái)的話,紅帽上能攻擊到并不代表一定能夠攻擊到Suse。

        從另外一個(gè)層面來(lái)看,很多人以前會(huì)說(shuō)Linux的市場(chǎng)占有率非常低,所以沒(méi)有那么多受到攻擊。但是如果看服務(wù)器端市場(chǎng)領(lǐng)域Linux不會(huì)比Windows差多少,但我們也不會(huì)受到攻擊。所以這個(gè)說(shuō)法是沒(méi)有根據(jù)的。安全就是安全的,不安全就是不安全的,不會(huì)說(shuō)因?yàn)槟愕氖袌?chǎng)占有率多少而影響安全的問(wèn)題。


        新版本內(nèi)核何時(shí)出現(xiàn)


        騰訊科技:在看2.6時(shí)感覺(jué)花了很長(zhǎng)時(shí)間從終成形,下一個(gè)版本什么時(shí)候能夠出來(lái)?

        Andrew:以前是2.4、2.6,屬于穩(wěn)定版本,單數(shù)2.1、2.3、2.5是開發(fā)版本,但是在三年前已經(jīng)改變了這個(gè)方向,從2.6開始所有開發(fā)與穩(wěn)定版本都以2.6打頭開始,開發(fā)版本是以RS開始的。從前一些大規(guī)模的改做從1.0到多核的2.0,到2.0多線程支持,到2.6硬盤筷子系統(tǒng)的改作,這些工作2.6基本上已經(jīng)做完了,對(duì)于2.6來(lái)說(shuō)大部分的內(nèi)核工程師都認(rèn)為已經(jīng)有一個(gè)足夠穩(wěn)定、結(jié)構(gòu)強(qiáng)大的平臺(tái)關(guān)注在不是一個(gè)架構(gòu)上的改革,而是新功能的加強(qiáng),新創(chuàng)意的平臺(tái)。沒(méi)有想過(guò)什么時(shí)候會(huì)出3,沒(méi)有計(jì)劃,因?yàn)橐呀?jīng)不需要大規(guī)模的改作了,但是新的版本會(huì)不停地出來(lái)。



        騰訊科技:昨天Jim在發(fā)布會(huì)上說(shuō)要在中國(guó)招一個(gè)內(nèi)核作者,您認(rèn)為這個(gè)人需要什么樣的技能和威望?

        Andrew:對(duì)于內(nèi)核維護(hù)者的需求很簡(jiǎn)單,技術(shù)一定要非常好,英語(yǔ)讀寫非常好,溝通能力很好,C語(yǔ)言的功底非常好。有足夠的能力跟其他人溝通。能夠繼續(xù)地在一個(gè)非常悶的環(huán)境里工作,因?yàn)閮?nèi)核并不是非常令人激動(dòng)的工作環(huán)境。能夠跟團(tuán)體合作、跟其他人交流。

        其實(shí)跟一般招聘的要求差不多。而且內(nèi)核的代碼也非常多,對(duì)于能夠把代碼很快地讀懂或者是很快地理解其他人發(fā)過(guò)來(lái)的代碼是什么意思,或者是知道問(wèn)題在哪里的工作也很重要。


        成為內(nèi)核維護(hù)者并不難
       

        騰訊科技:成為內(nèi)核作者在Linux圈子里是比較好的榮譽(yù)嗎?

        Andrew:對(duì)于所有的內(nèi)核開發(fā)人員來(lái)說(shuō),大家對(duì)你的認(rèn)可也是你以往的貢獻(xiàn)累積出來(lái)的成果。人家都認(rèn)可你,能夠把一部分代碼交給你管確實(shí)是一種尊重和榮耀。

        但同時(shí)有大部分的內(nèi)核代碼現(xiàn)在是沒(méi)有維護(hù)者的,如果你想拿到內(nèi)核維護(hù)者也非常簡(jiǎn)單,沒(méi)有我們想象的那么難。難的地方是你要讓人家認(rèn)同你。比方說(shuō)串口等甚至很多驅(qū)動(dòng)現(xiàn)在隨手可得,只要你走進(jìn)去說(shuō)我有足夠的實(shí)力、有足夠的代碼貢獻(xiàn),可以繼續(xù)維護(hù)這個(gè)代碼。這個(gè)榮譽(yù)是看你愿不愿意付出拿到的,而不是說(shuō)這么難的一件事。

      免費(fèi)預(yù)約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 天天精品福利一区视频 | 亚洲国产日韩欧美精品不卡 | 亚洲日本97视频在线 | 在线高清亚洲精品 | 午夜美女福利视频 | 日本有码在线视 |