Android的系統(tǒng)架構(gòu)和其操作系統(tǒng)一樣,采用了分層的架構(gòu)。Android分為四個層,從高層到低層分別是應(yīng)用程序?qū)印?yīng)用程序框架層、系統(tǒng)運行庫層和Linux內(nèi)核層。
10年的響水網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整響水建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“響水網(wǎng)站設(shè)計”,“響水網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
一、應(yīng)用程序
Android會同一系列核心應(yīng)用程序包一起發(fā)布,該應(yīng)用程序包包括客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應(yīng)用程序都是使用JAVA語言編寫的。
二、應(yīng)用程序框架
開發(fā)人員也可以完全訪問核心應(yīng)用程序所使用的API框架。該應(yīng)用程序的架構(gòu)設(shè)計簡化了組件的重用;任何一個應(yīng)用程序都可以發(fā)布它的功能塊并且任何其它的應(yīng)用程序都可以使用其所發(fā)布的功能塊(不過得遵循框架的安全性)。同樣,該應(yīng)用程序重用機制也使用戶可以方便的替換程序組件。
三、系統(tǒng)運行庫
Android 包含一些C/C++庫,這些庫能被Android系統(tǒng)中不同的組件使用。它們通過 Android 應(yīng)用程序框架為開發(fā)者提供服務(wù)。
四、Linux內(nèi)核層
Android內(nèi)核是基于Linux 內(nèi)核的修改的內(nèi)核版本,它提供了用于支持Android平臺的設(shè)備驅(qū)動。
android系統(tǒng)架構(gòu)分從下往上為linux 內(nèi)核層、運行庫、應(yīng)用程序框架層、和應(yīng)用程序?qū)?/p>
linuxkernel:負責(zé)硬件的驅(qū)動程序、網(wǎng)絡(luò)、電源、系統(tǒng)安全以及內(nèi)存管理等功能。
libraries和 androidruntime:libraries:即c/c++函數(shù)庫部分,大多數(shù)都是開放源代碼的函數(shù)庫,例如webkit,該函數(shù)庫負責(zé) android網(wǎng)頁瀏覽器的運行,例如標準的c函數(shù)庫libc、openssl、sqlite等,當(dāng)然也包括支持游戲開發(fā)2dsgl和 3dopengles,在多媒體方面有mediaframework框架來支持各種影音和圖形文件的播放與顯示,例如mpeg4、h.264、mp3、 aac、amr、jpg和png等眾多的多媒體文件格式。android的runtime負責(zé)解釋和執(zhí)行生成的dalvik格式的字節(jié)碼。
applicationframework(應(yīng)用軟件架構(gòu)),java應(yīng)用程序開發(fā)人員主要是使用該層封裝好的api進行快速開發(fā)。
applications:該層是java的應(yīng)用程序?qū)樱琣ndroid內(nèi)置的googlemaps、e-mail、即時通信工具、瀏覽器、mp3播放 器等處于該層,java開發(fā)人員開發(fā)的程序也處于該層,而且和內(nèi)置的應(yīng)用程序具有平等的位置,可以調(diào)用內(nèi)置的應(yīng)用程序,也可以替換內(nèi)置的應(yīng)用程序。
上面的四個層次,下層為上層服務(wù),上層需要下層的支持,調(diào)用下層的服務(wù),這種嚴格分層的方式帶來的極大的穩(wěn)定性、靈活性和可擴展性,使得不同層的開發(fā)人員可以按照規(guī)范專心特定層的開發(fā)。
android應(yīng)用程序使用框架的api并在框架下運行,這就帶來了程序開發(fā)的高度一致性,另一方面也告訴我們,要想寫出優(yōu)質(zhì)高效的程序就必須對整個 applicationframework進行非常深入的理解。精通applicationframework,你就可以真正的理解android的設(shè)計 和運行機制,也就更能夠駕馭整個應(yīng)用層的開發(fā)。
Android開發(fā)中,在打包發(fā)布應(yīng)用時會選擇應(yīng)用適配的cpu架構(gòu)平臺,在引用第三方庫時也遇到根據(jù)不同cpu架構(gòu)引入相應(yīng)的so包。Android主要包括一下cpu架構(gòu):
在Android系統(tǒng)上,每一個CPU架構(gòu)對應(yīng)一個ABI:
ABI是Application Binary Interface的縮寫,常表示兩個程序模塊之間的接口,且其中一個模塊常為機器碼級別的library或操作系統(tǒng)。它定義了函數(shù)庫的調(diào)用、應(yīng)用的二進制文件(尤其是.so)如何運行在相應(yīng)的系統(tǒng)平臺上等細節(jié)。其中mips及mips64極少用于手機,出發(fā)點是高性能,主要用于路由器、貓。
從CPU發(fā)明到現(xiàn)在,有非常多種架構(gòu),從我們熟悉的X86,ARM,到不太熟悉的MIPS,IA64,它們之間的差距都非常大。但是如果從最基本的邏輯角度來分類的話,它們可以被分為兩大類,即所謂的“復(fù)雜指令集(CISC)”與“精簡指令集(RISC)”系統(tǒng)。
Intel和ARM處理器的第一個區(qū)別是,前者使用復(fù)雜指令集(CISC),后者使用精簡指令集(RISC)。屬于這兩種類中的各種架構(gòu)之間最大的區(qū)別,在于它們的設(shè)計者考慮問題方式的不同。
ARM架構(gòu)是一個32位精簡指令集RISC(Reduced Instruction Set Computing)處理器架構(gòu),其廣泛地使用在許多嵌入式系統(tǒng)設(shè)計。但在其他領(lǐng)域上也有很多作為,由于節(jié)能的特點,ARM處理器非常適用于移動通信領(lǐng)域,匹配其主要設(shè)計目標為低成本、高性能、低耗電的特性。
ARM的優(yōu)勢不在于性能強大而在于效率,ARM采用RISC流水線指令集,在完成綜合性工作方面根本就處于劣勢,而在一些任務(wù)相對固定的應(yīng)用場合其優(yōu)勢就能發(fā)揮得淋漓盡致。ARM結(jié)構(gòu)的電腦是通過專用的數(shù)據(jù)接口使CPU與數(shù)據(jù)存儲設(shè)備進行連接,所以ARM的存儲、內(nèi)存等性能擴展難以進行(一般在產(chǎn)品設(shè)計時已經(jīng)定好其內(nèi)存及數(shù)據(jù)存儲的容量),所以采用ARM結(jié)構(gòu)的系統(tǒng),一般不考慮擴展。基本奉行“夠用就好”的原則。
x86 架構(gòu)是一個復(fù)雜指令集CISC(Complex Instruction Set Computer)處理器架構(gòu)。X86結(jié)構(gòu)的電腦無論如何都比ARM結(jié)構(gòu)的系統(tǒng)在性能方面要快得多、強得多。X86的CPU隨便就是1G以上、雙核、四核。X86結(jié)構(gòu)的電腦采用“橋”的方式與擴展設(shè)備(如:硬盤、內(nèi)存等)進行連接,而且x86結(jié)構(gòu)的電腦出現(xiàn)了近30年,其配套擴展的設(shè)備種類多、價格也比較便宜,所以x86結(jié)構(gòu)的電腦能很容易進行性能擴展,如增加內(nèi)存、硬盤等。
Android系統(tǒng)構(gòu)架是安卓系統(tǒng)的體系結(jié)構(gòu),android的系統(tǒng)架構(gòu)和其操作系統(tǒng)一樣,采用了分層的架構(gòu),共分為四層,從高到低分別是Android應(yīng)用層,Android應(yīng)用框架層,Android系統(tǒng)運行庫層和Linux內(nèi)核層。
Android系統(tǒng)構(gòu)架主要應(yīng)用于ARM平臺,但不僅限于ARM,通過編譯控制,在X86、MAC等體系結(jié)構(gòu)的機器上同樣可以運行。
中文名
安卓系統(tǒng)構(gòu)架
外文名
Android systematic framework
Android系統(tǒng)架構(gòu)分為四層架構(gòu),從高到低分別是應(yīng)用層,應(yīng)用框架層,系統(tǒng)運行層和Linux內(nèi)核層。
Android系統(tǒng)體系結(jié)構(gòu)
1.應(yīng)用層
Android會同一系列核心應(yīng)用程序包一起發(fā)布,該應(yīng)用程序包包括email客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。它們一般都是使用Java進行編寫。
2.應(yīng)用框架層
開發(fā)人員也可以完全訪問核心應(yīng)用程序所使用的API框架。該應(yīng)用程序的架構(gòu)設(shè)計簡化了組件的重用;任何一個應(yīng)用程序都可以發(fā)布它的功能塊并且任何其它的應(yīng)用程序都可以使用其所發(fā)布的功能塊(不過得遵循框架的安全性限制)。同樣,該應(yīng)用程序重用機制也使用戶可以方便的替換程序組件。
網(wǎng)站標題:android架構(gòu),android開發(fā)框架
URL分享:http://www.chinadenli.net/article4/dseogoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、外貿(mào)建站、小程序開發(fā)、自適應(yīng)網(wǎng)站、企業(yè)建站、移動網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)