學習筆記 android 系統結構

最近在研究andorid系統結構,總結了一些心得如下。

衆所周知,android底層運行着linux內核。所以android系統被劃分成了好幾層,由下自上可以簡述爲:

linux驅動開發:這就是純粹的原生linux驅動開發,和嵌入式linux驅動開發等等完全類似。不過根據開源協議,這層的代碼要開源。

硬件驅動層開發:這層是android系統和linux系統之間的接口,其實很像是對linux驅動的封裝(linux內核60%以上代碼都是驅動),這層遵循apache協議,代碼可以不用公佈,可以商業化,所以硬件商可以把自己的核心驅動放在這裏。

android framwork層開發:這層從代碼層講就是c/c++與java之間的接口層,把硬件驅動層的c/c++代碼映射成java代碼。涉及jni等等。

android 應用層開發:這層是頂層的app開發層,大多數app都是在這層開發的。

看了一套完整的例子後,真心覺得硬件驅動層可以刪除掉啊,從技術上感覺完全沒必要化這麼多層。單純爲了代碼的公佈與否,搞了這麼一層。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章