Android操作系統(tǒng)是一個(gè)堆棧的軟件組件,它大致分為五個(gè)部分和四個(gè)主要層的體系結(jié)構(gòu),如下圖所示。
Linux內(nèi)核
在層次的底部是 Linux - Linux 2.6。它提供基本的系統(tǒng)功能,如進(jìn)程管理,內(nèi)存管理,設(shè)備管理,如:相機(jī),鍵盤(pán),顯示器等內(nèi)核處理的事情,Linux 確實(shí)不錯(cuò),如網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序比較多,內(nèi)搭外圍硬件接口。
程序庫(kù)
在Linux內(nèi)核之上,有一個(gè)組庫(kù),包括開(kāi)放源碼的 Web瀏覽器引擎WebKit,libc庫(kù),SQLite數(shù)據(jù)庫(kù),這是一個(gè)非常有用的庫(kù),用于存儲(chǔ)和共享應(yīng)用程序數(shù)據(jù),播放和錄制音頻和視頻,SSL庫(kù)負(fù)責(zé)互聯(lián)網(wǎng)安全等。
Android運(yùn)行時(shí)
這是體系結(jié)構(gòu)第三個(gè)部分并在第二層之上由底部提供。本節(jié)提供了一個(gè)關(guān)鍵的組件,叫做Java虛擬機(jī),是一種專(zhuān)門(mén)設(shè)計(jì)和優(yōu)化的 Android Dalvik 虛擬機(jī)。
Dalvik虛擬機(jī)使用的Linux核心功能,如內(nèi)存管理和多線程,在Java語(yǔ)言中是內(nèi)在的。 Dalvik虛擬機(jī)將每一個(gè)Android應(yīng)用程序運(yùn)行在自己的進(jìn)程中,使用Dalvik虛擬機(jī)實(shí)例。
Android還提供了一組核心庫(kù),使Android應(yīng)用程序開(kāi)發(fā)人員使用標(biāo)準(zhǔn)的Java編程語(yǔ)言編寫(xiě)Android應(yīng)用程序。
應(yīng)用程序框架
應(yīng)用程序框架層使用Java類(lèi)形式的應(yīng)用程序提供了許多的更高級(jí)別的服務(wù)。允許應(yīng)用程序開(kāi)發(fā)人員在其應(yīng)用程序中使用這些服務(wù)。
應(yīng)用
在最上層,即所有的 Android 應(yīng)用程序。一般我們編寫(xiě)的應(yīng)用程序只被安裝在這層。應(yīng)用的例子如:瀏覽器,游戲等。
聯(lián)系客服