時間:2019-06-29 00:00:00 來源:信盈達(dá) 作者:信盈達(dá)
北京linux驅(qū)動培訓(xùn)今天信盈達(dá)小編給喜歡Linux或者是從事Linux開發(fā)的小伙伴分享一篇Linux開發(fā)經(jīng)驗的總結(jié),別的不多說,下面我們一起來看一下吧,希望對小伙伴們有所幫助。
1、更短的發(fā)布周期很重要
在Linux項目的早期階段,內(nèi)核的每個主版本需要好幾年發(fā)布一次,這意味著用戶需要等待很長時間才能享受到新功能,這對于用戶和經(jīng)銷商來說是相當(dāng)令人沮喪的。而且,更重要的是,這么長的周期意味著需要一下子集成大量的代碼。把這么多代碼合入一個版本里,壓力也是很大的。更短的周期可以解決所有這些問題。新代碼能夠在更短時間內(nèi)合入到穩(wěn)定版中。將新代碼集成到幾乎穩(wěn)定不變的基線版本上,使得能夠在對系統(tǒng)產(chǎn)生極小影響的情況下引入根本性的變化。開發(fā)人員知道,如果他們錯過了這個發(fā)布周期,兩個月內(nèi)還會有另外一個,所以他們很少會過早地合入代碼。
內(nèi)核開發(fā)一直在試圖擴(kuò)大開發(fā)人員的范圍,直到BitKeeper這款源代碼管理系統(tǒng)出現(xiàn),幾乎在一夜之間社區(qū)的做法發(fā)生了改變,而Git的出現(xiàn)帶來了又一次的飛躍。如果沒有合適的工具,像內(nèi)核這樣的項目將無法正常運轉(zhuǎn),從而會被自身的重量壓垮。
一般來說,如果一個開發(fā)大咖拒絕了某個提交上來的變更,那么這個變更將不會被合并進(jìn)去。如果開發(fā)人員發(fā)現(xiàn)自己在幾個月前提交的代碼在郵件列表中被拒絕了,那是非常令人沮喪的。但這也保證了內(nèi)核開發(fā)可以適應(yīng)大量的用戶和問題。沒有哪個用戶社區(qū)能夠以犧牲其他群組為代價而進(jìn)行變更。我們有一個可以支持從微型系統(tǒng)到超級計算機(jī)的代碼庫,它可以應(yīng)用在很多場景上。
很久以前,所有的變更需求都會直接轉(zhuǎn)到Linus Torvalds手中,但這很快就被證明是不合適的,因為沒有哪個人可以全面掌握像操作系統(tǒng)內(nèi)核這么復(fù)雜的項目。很早的時候,內(nèi)核不同領(lǐng)域的維護(hù)者們就提出了一個想法,就是把內(nèi)核的其中一部分分配給熟悉該領(lǐng)域的人。例如,網(wǎng)絡(luò)、無線、像PCI或USB這樣的驅(qū)動程序子系統(tǒng)、或者像ext2或vfat這樣的文件系統(tǒng)。然后再擴(kuò)展到由數(shù)百名維護(hù)人員負(fù)責(zé)代碼審查和整合,從而使得能夠在不犧牲產(chǎn)品質(zhì)量的情況下,在每個發(fā)布的版本中都包含成千上萬的變更。
大約在十多年前,內(nèi)核開發(fā)社區(qū)承諾,如果給定的內(nèi)核在特定的環(huán)境中能正常運行,那么所有后續(xù)的內(nèi)核版本也能在這個環(huán)境中正常運行。如果社區(qū)發(fā)現(xiàn)某個變更導(dǎo)致了其他問題的出現(xiàn),他們會很快地解決這個問題。該規(guī)則承諾用戶:系統(tǒng)升級不會破壞他們原來的系統(tǒng)。 因而,維護(hù)者很愿意在開發(fā)新功能的時候延續(xù)這個內(nèi)核。
免費領(lǐng)取試聽卡
申請已經(jīng)提交
老師會馬上給您安排試聽課程!
申請出錯了
您可以加老師QQ:914865590報名咨詢!