眾所皆知,Android是基於Linux而來的行動平台版本,但因Google在開發過程中修改並新增部分功能,產生如何恰當地在Linux中處理Android特有代碼方面有很多爭論,爭論的結果是Linus Torvalds在2009年年末將Android驅動程式剔出Linux內核。當然,這並非大家所樂見的,如今,在Linux Kernel 3.3發佈後,已達成了部分的統合目標。
|
Linux Kernel 3.3版本已整合Android專案所使用的Kernel程式碼 BigPic:333x514 |
Android和Linux之間的差異來自多個方面。其中之一是Google的Android開發團隊採用自主方式解決能耗問題;另外一個因素是Android團隊忙於開發Android設備細節問題,在與Linux核心團隊合作方面做得不夠好。
Linux基金會穩定版Linux內核維護工程師、Linux Driver Project掌門Greg Kroah-Hartman曾表示:“Google的Android團隊人員少,任務緊,資源有限,從長期來看,與我們合作有助於他們降低成本”。
事實上,Android和Linux整合的步伐相當快,在去年10月份的內核峰會上,Linux內核開發者“一致認為,Android內核代碼應當整合到主流內核中”,並因此創建了Android主流化項目(AndroidMainliningProject)。
如今Linux Kernel 3.3版本已整合Android專案所使用的Kernel程式碼,並改進及提供多種功能。由於許多Android獨有的子系統或功能已經納入Linux Kernel 3.3,Android專有App及其執行所需環境也有可能被移植到Ubuntu或Mint等其他Linux套件中。Android的WakeLocks尚未被整合到主流內核中,專案近期將整合並改善Linux及Android的電源管理功能。
“我們過去一段時間只是方向不同,從長期來看我們還會合二為一,所以我沒有什麼好擔心的。”不過,Linus Torvalds去年秋季曾表示:“Android和Linux最終將回歸相同的內核,但還有許多工作需要做,這一工作在4-5年內無法完成。”