Android操作系統(tǒng)的架構(gòu)設(shè)計(jì)分析
之前一直在Android應(yīng)用層上做工作,最近開始研究Android平臺(tái)上的東東了,主要是在Android Frameworks層和系統(tǒng)庫(kù)層進(jìn)行研究。以下是我自己的理解,領(lǐng)悟,希望與大家一塊分享。
Android系統(tǒng)架構(gòu)分為L(zhǎng)inux內(nèi)核驅(qū)動(dòng)、C/C ++框架、Java框架、Java應(yīng)用程序。
Android應(yīng)用層:
Android應(yīng)用程序需要Java框架支持。主要是針對(duì)手機(jī)用戶的。Android應(yīng)用層都是由Java代碼寫的,運(yùn)行在虛擬機(jī)中。虛擬機(jī)在Android平臺(tái)中扮演著很重要的角色。虛擬機(jī)在執(zhí)行Java類的過(guò)程中,如果Java類需要與C/C++組件溝通時(shí),虛擬機(jī)會(huì)載入C/C++組件,然后讓Java函數(shù)順利的調(diào)用到C/C++組件的函數(shù)。Java與C/C++能通過(guò)標(biāo)準(zhǔn)的JNI界面相互溝通。
注:Java類是在虛擬機(jī)上運(yùn)行的,C/C++不是在虛擬機(jī)上執(zhí)行的。那么如何加載C/C++組件函數(shù)的呢?
答案是:通過(guò)System.loadLibrary(*.so的檔案名);入口函數(shù)是JNI_OnLoad();
Frameworks框架層(應(yīng)用框架層):
Java框架就是由C/C++庫(kù)包裝成為了一個(gè)JNI。簡(jiǎn)稱Java Native Interface,即Java本地接口。在應(yīng)用層和系統(tǒng)庫(kù)層之間起了一個(gè)橋梁的作用。主要是針對(duì)手機(jī)開發(fā)商。
C/C++框架(系統(tǒng)庫(kù)):
具體實(shí)現(xiàn)Java框架功能。Java框架中的native方法都是由C/C++來(lái)完成的。
Android驅(qū)動(dòng)底層(內(nèi)核層):
最后驅(qū)動(dòng)硬件完成功能。
系統(tǒng)架構(gòu)圖如下:

相關(guān)文章
Android開發(fā)筆記之:對(duì)實(shí)踐TDD的一些建議說(shuō)明
本篇文章是對(duì)Android中實(shí)踐TDD的一些建議進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
Android 文件數(shù)據(jù)存儲(chǔ)實(shí)例詳解
這篇文章主要介紹了Android 文件數(shù)據(jù)存儲(chǔ)實(shí)例詳解的相關(guān)資料,這里附有實(shí)例代碼,幫助大家學(xué)習(xí)理解,需要的朋友可以參考下2016-12-12
Android實(shí)現(xiàn)志愿者系統(tǒng)詳細(xì)步驟與代碼
這篇文章主要介紹了Android實(shí)現(xiàn)志愿者系統(tǒng),本系統(tǒng)采用MVC架構(gòu)設(shè)計(jì),SQLite數(shù)據(jù)表有用戶表、成員表和活動(dòng)表,有十多個(gè)Activity頁(yè)面。打開應(yīng)用,進(jìn)入歡迎界面,3s后跳轉(zhuǎn)登錄界面,用戶先注冊(cè)賬號(hào),登錄成功后進(jìn)入主界面2023-02-02
Android中HttpURLConnection與HttpClient的使用與封裝
這篇文章主要介紹了Android中HttpURLConnection與HttpClient的使用以及封裝方法,感興趣的小伙伴們可以參考一下2016-03-03
詳解Android Studio中Git的配置及協(xié)同開發(fā)
這篇文章主要介紹了詳解Android Studio中Git的配置及協(xié)同開發(fā),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
6步輕松實(shí)現(xiàn)兩個(gè)listView聯(lián)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了教大家通過(guò)6步輕松實(shí)現(xiàn)兩個(gè)listView聯(lián)動(dòng)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
將替代ListView的RecyclerView 的使用詳解(一)
這篇文章主要介紹了將替代ListView的RecyclerView 的使用詳解(一)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07

