Google工程師自曝公司如何用Linux
Google是當(dāng)之無愧的Linux***用戶,但這位大客戶如何用Linux,外界卻并不知曉多少。
在上周舉行的東京Linux Kernel峰會(huì)上,Google工程師Mike Waychison透露了一些使用Linux的信息: Google主要用Perforce管理內(nèi)核代碼;開發(fā)者固定在單一tree上;每17月,Google會(huì)換一個(gè)內(nèi)核版本,最初是Kernel 2.4.18,接著是2.6.11,2.6.18,2.6.26,顯然Google一直落后于內(nèi)核版本的開發(fā)進(jìn)度;Google kernel開發(fā)者共30人,一般他們會(huì)去檢查自己在tree上的變動(dòng),然后18個(gè)月后再檢查一次,這造成了嚴(yán)重的維護(hù)問題;對(duì)于最初的2.4.18,他們打了2000多個(gè)補(bǔ)丁,加入了49.2萬行代碼,在***的2.6.26上他們打了1200多個(gè)補(bǔ)丁,加入了30萬行代碼;Google試圖改變這一切,試圖與內(nèi)核開發(fā)社區(qū)更好的合作,他們正遷移到Git版本管理系統(tǒng),計(jì)劃跟上內(nèi)核開發(fā)進(jìn)度;四分之三的Google代碼與core kernel有關(guān),設(shè)備支持代碼只有很小的一部分;社區(qū)的開發(fā)太快了,這讓Google與社區(qū)的交流越加困難。
Linus問Google為什么不愿意公開代碼,Waychison承認(rèn)他們的代碼并不漂亮,他們并不清楚自己的修改是否對(duì)外界有用。對(duì)于CPU調(diào)度,Google發(fā)現(xiàn)使用完全公平調(diào)度器(completely fair scheduler)會(huì)帶來問題,因此在2.6.26上運(yùn)行的舊的O(1)調(diào)度器.....
【編輯推薦】