作者:Greg Kroah-Hartman 在Linux2.6.33發(fā)布并且刪除了Andriod內核代碼之后,很多人問(wèn)我到底發(fā)生了什么,以及接下來(lái)我們會(huì )如何對待Andriod,下面我以我的理解談一談這整件事。 首先我得說(shuō)我很喜歡Andriod平臺,我一直都在使用G1,直到上周每一天都在用。它對我還有像我一樣的使用者都很好用,我對此感到很高興。 從技術(shù)角度來(lái)說(shuō)我也感到很高興,Google選用Linux內核并在此基礎上創(chuàng )建一個(gè)跟傳統linux系統完全不同的手機操作平臺是一件很讓人吃驚的一件事,同時(shí)你還可以在A(yíng)ndriod設備上直接運行“真正的”Linux系統,并且它同Andriod系統都能在無(wú)需做出什么改變的情況下良好運行。 Andriod同時(shí)解決了手機制造商多年以來(lái)就不得不面對的一個(gè)問(wèn)題,即一個(gè)免費版本的Java和一個(gè)統一的程序運行平臺,在這個(gè)平臺上程序員可以寫(xiě)出在其他任何支持Java的系統都能運行的程序,因為這所有現存的“Linux手機聯(lián)盟”都將面臨這瓦解的境地,大概再過(guò)不久它們就會(huì )悄無(wú)聲息的關(guān)上大門(mén),假如它們還有門(mén)可以關(guān)。 發(fā)生了什么? 那么到底是什么導致Andriod內核代碼被排出Linux內核之外?簡(jiǎn)單的說(shuō),就是因為沒(méi)人關(guān)心代碼,所以它才會(huì )被排出Linux內核。就像我早先聲明的那樣,在架構樹(shù)上的所有代碼都應該和主分支內核相容,否則它就會(huì )被排除,但是這里有一個(gè)更大的問(wèn)題是,Andriod不僅僅只是在/drivers /staging/andriod目錄里多出一些“怪異的”驅動(dòng)程序,假如你想要運行Andriod,你就必須先了解Google在安全模塊中新寫(xiě)出來(lái)的鎖類(lèi)型,當然還有鉤子類(lèi)型。為了使你寫(xiě)出來(lái)的驅動(dòng)程序能在A(yíng)ndriod中使用,你得把它恰當的同這個(gè)鎖相容和,你有時(shí)甚至還要考慮這整個(gè)“怪異的”安全模塊,天呀,這可是同Linux系統完全不同的驅動(dòng)架構。 因為這些驅動(dòng)只能使用在Google的內核樹(shù)上,這就意味著(zhù)為所有為Andriod硬件平臺編寫(xiě)出來(lái)的驅動(dòng)都不可能進(jìn)入主內核樹(shù),正因為這,Google現在開(kāi)始阻止這些硬件和驅動(dòng)代碼進(jìn)入Linux主驅動(dòng)樹(shù),并且積極地建立一個(gè)很多計算機銷(xiāo)售商都依賴(lài)的內核分支。 現在Linux發(fā)行版內核源代碼樹(shù)的分支都被維護地很好,但假如任事態(tài)發(fā)展的話(huà),事情也許會(huì )變得很糟糕,因為Google沒(méi)有使其代碼進(jìn)入主內核,這些編寫(xiě)驅動(dòng)和平臺代碼的公司都被排除在外而不能為內核社區做出貢獻。內核社區幾年以來(lái)一直都在試圖說(shuō)服這些公司把它們的代碼加入內核,這樣它們就可以使用安全更新,并自動(dòng)處理應用程序接口的問(wèn)題,這些公司聽(tīng)從了他們的建議,你可以看到越來(lái)越多的大公司出現在在每個(gè)內核版本里,可現在這個(gè)進(jìn)程因為Google停滯下來(lái)了,因為Andriod的周邊公司不能回報上游Linux內核,這就導致了這些公司需要在維護花費更多的資源同時(shí)增加了開(kāi)發(fā)周期。 為使Andriod融入內核需要做些什么? 在早前Andriod加入架構樹(shù)的時(shí)候,很多內核開(kāi)發(fā)者檢查了Andriod代碼,并且指出了為了能被接受應該清理和改變的地方,這些改變很多影響到了 Andriod內核和用戶(hù)空間邊界,同時(shí)如果Andriod內核發(fā)生變動(dòng),Andriod用戶(hù)空間邏輯也需要做出相應改變,所以就不要指望Google員工去做這件事了。 那么,該怎么辦? 我真的不知道該怎么辦,Google再也沒(méi)有表現出希望把它的代碼加入上游的打算,一些公司試圖把它們的代碼加入上游,可是那樣需要去做更大的工程工作,是一種本來(lái)根本就不必要的痛苦。 冀望 我真地希望Google能夠修改Andriod代碼庫,使其重回Linux的懷抱,并停止它所造成的同很多嵌入式Linux硬件公司的隔閡,我曾私下里幫助完成這個(gè)工作,而現在預備公開(kāi)地再做一次,但是為了達到這點(diǎn)我需要來(lái)自Google開(kāi)發(fā)者的幫助,沒(méi)有他們,一切都不會(huì )改善。 好消息是似乎所有對內核/用戶(hù)空間應用程序接口的改變都不會(huì )影響在堆棧以上的Andriod代碼(比如應用程序),所以這項工作的實(shí)施不會(huì )影響到整個(gè)系統。 我會(huì )在CE Linux Forum 2010 conference上發(fā)表一個(gè)演講,希望在那之前事情有所改觀(guān),要知道這個(gè)年會(huì )可是有對其參與者所做的壞事進(jìn)行叫喊的傳統的。 |
我早就知道google想把linux換個(gè)名自己獨吞...... md |
Google正在做當年微軟的做法 |
![]() |
改頭換面,就是一種新的操作系統。 md........... |
google也不是什么好鳥(niǎo)。 |
google有這個(gè)實(shí)力領(lǐng)導android分支獨立發(fā)展, 可還是希望它能和主干相容, 否則linux的一些進(jìn)展就享受不到了 , 難以割舍啊 ~ |
guanzhu zhong ... |