[學習筆記一]、Android體系與系統架構

一、Android系統架構 java

二、Linux android

Linux層,Android最底層最核心的部分。咱們打款手機Setting,選擇about phone選項,這一選項所顯示的內核版本,就是咱們所用的Linux內核的版本。 安全

Linux層包含了Android系統的核心服務,包括硬件驅動、進程管理、安全系統,等等。 架構

三、Dalvik 與 ART
Dalvik 包含了一整套的Android運行環境虛擬機,每一個App都會分配Dalvik虛擬機來保證互相之間不受干擾,並保持獨立。它的特色是在運行時編譯。 框架

打個比方,就比如你買了一輛可摺疊的自行車,平時是摺疊的,只有騎的時候,才須要組裝起來用。 ionic

而在Android5.x版本開始,ART模式已經取代了Dalvik, ART採用的是安裝時就進行編譯,之後運行時就不用編譯了。 測試

就比如你買了輛組裝好了的自行車,裝好就能夠騎了。 網站

固然,對在其虛擬機環境中運行的大部分App來講,它們都運行着一樣的代碼。 ui

四、Framework google

包含了整個Android Framework的重點。

五、Standard libraries

包含的是Android的一些標準庫,就是開發者在開源環境中可使用的開發庫

六、Application

七、Android系統源碼

查看系統源碼的一個網站:http://androidxref.com/

http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android/

Android源碼結構:

- Makefile

- bionic    (bionic C庫)

-bootable (啓動引導相關代碼)

- build    (存放系統編譯規則等基礎開發包配置)

- cts        (Google兼容性測試標準)

- dalvik    (dalvik虛擬機)

- development (應用程序開發相關)

- external     (android使用的一些開源的模塊)

- frameworks (Framework框架核心)

- hardware    (廠商硬件適配層HAL代碼)

- out        (編譯完成後的代碼輸出目錄)

- packages (應用程序包)

- prebuilt (x86和arm架構下預編譯資源)

- sdk    (sdk及模擬器)

- system    (底層文件系統庫、應用及組件)

- vendor    (廠商定製代碼)

相關文章
相關標籤/搜索