Android系統結構

來源:互聯網
上載者:User

標籤:

從中可以看出,Android系統架構為四層結構,從上層到下層分別是應用程式層、應用程式架構層、系統運行庫層以及Linux核心層,分別介紹如下:

(1)Appliacation

   Android平台不僅僅是作業系統,也包含了許多應用程式,諸如SMS簡訊用戶端程式、電話撥號程式、圖片瀏覽器、Web瀏覽器等應用程式。這些應用程式都是用Java語言編寫的,並且這些應用程式都是可以被開發人員開發的其他應用程式所替換,這點不同於其他手機作業系統固化在系統內部的系統軟體,更加靈活和個人化。

(2)Application Framework

  應用程式架構層是我們從事Android開發的基礎,很多核心應用程式也是通過這一層來實現其核心功能的,該層簡化了組件的重用,開發人員可以直接使用其提供的組件來進行快速的應用程式開發,也可以通過繼承而實現個人化的拓展。

A: Activity Manager

   管理各個應用程式生命週期以及通常的導航回退功能

B: Window Manager

   管理所有的視窗程序

C: Content Provider

   使得不同應用程式之間存取或者分享資料

D: View System

   構建應用程式的基本組件

E: Notification Manager

   使得應用程式可以在狀態列中顯示自訂的提示資訊

F:Package Manager

  Android系統內的程式管理

G: Telephony Manager

  管理所有的行動裝置功能

H:Resource Manager

  提供應用程式使用的各種非代碼資源,如本地化字串、圖片、布局檔案、顏色檔案等

I: Location Manager

  提供位置服務

J:XMPP Service

 提供Google Talk服務

 

(3)系統運行庫層

可以看出,系統運行庫層可以分成兩部分,分別是系統庫和Android運行時,分別介紹如下:

A:系統庫

   系統庫是應用程式架構的支撐,是串連應用程式架構層與Linux核心層的重要紐帶。其主要分為如下幾個:

  • Surface Manager

       執行多個應用程式時候,負責管理顯示與存取操作間的互動,另外也負責2D繪圖與3D繪圖進行顯示合成。

  • Media Framework

       多媒體庫,基於PacketVideo OpenCore;支援多種常用的音頻、視頻格式錄製和回放,編碼格式包括MPEG4、MP3、H.264、AAC、ARM。

  • SQLite

      小型的關係型資料庫引擎

  • OpenGL|ES

     根據OpenGL ES 1.0API標準實現的3D繪圖函數庫

  • FreeType

     提供點陣字與向量字的描繪與顯示

  • WebKit

     一套網頁瀏覽器的軟體引擎

  • SGL

     底層的2D圖形渲染引擎

  • SSL

     在Andorid上通訊過程中實現握手

  • Libc

       從BSD繼承來的標準C系統函數庫,專門為基於embedded linux的裝置定製

 

B:Android運行時

 Android應用程式時採用Java語言編寫,程式在Android運行時中執行,其運行時分為核心庫和Dalvik虛擬機器兩部分。

  • 核心庫

       核心庫提供了Java語言API中的大多數功能,同時也包含了Android的一些核心API,如android.os、android.net、android.media等等。

  • Dalvik虛擬機器

        Android程式不同於J2me程式,每個Android應用程式都有一個專有的進程,並且不是多個程式運行在一個虛擬機器中,而是每個Android程式都有一個Dalivik虛擬機器的執行個體,並在該 執行個體中執行。Dalvik虛擬機器是一種基於寄存器的Java虛擬機器,而不是傳統的基於棧的虛擬機器,並進行了記憶體資源使用的最佳化以及支援多個虛擬機器的特點。需要注意的是,不同於J2me,Android程式在虛擬機器中執行的並非編譯後的位元組碼,而是通過轉換工具dx將Java位元組碼轉成dex格式的中間碼。

 

 (4)Linux核心層

        Android是基於Linux2.6核心,其核心系統服務如安全性、記憶體管理、進程管理、網路協議以及驅動模型都依賴於Linux核心。

Android系統結構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.