Android系統架構的簡單描述

來源:互聯網
上載者:User

標籤:

架構圖如下:

1)英文版:

2)中文版:

 

  由圖可知:Android 系統架構從下到上分為 Linux核心層、中介軟體、 應用程式架構層和應用程式層。

  1、Linux kernel

    負責硬體的驅動程式、網路、電源、系統安全以及記憶體管理等功能。

  2、中介軟體:核心庫和運行時(libraries & Android runtime)

    1)核心庫

       即c/c++函數庫部分,大多數都是開放原始碼的函數庫,例如webkit(引擎),該函數庫負責 android網頁瀏覽器的運行,例如 標準的 c 函數庫libc、openssl、sqlite等,當然也包括支援遊戲開發2dsgl和 3dopengles,在多媒體方面有mediaframework架構來支援各種影音和圖形檔案的播放與顯示。

    2)運行時

         區別於Java虛擬機器的是,每一個Android 應用程式都在它自己的進程中運行,都有一個屬於自己的Dalvik 虛擬機器,這一點可以讓系統在運行時可以達到最佳化,程式間的影響大大降低。Dalvik虛擬機器並非運行Java位元組碼,而是運行自己的位元組碼。負責解釋和執行產生的dalvik格式的位元組碼。

  3、應用程式架構層

    java應用程式開發人員主要是使用該層封裝好的api進行快速開發。該層主要有:

    1)豐富而又可擴充性的視圖(Views),可以用來構建應用程式, 它包括列表(lists),網格(grids), 文字框(text boxes),按鈕(buttons),可嵌入的網頁瀏覽器。            

         2)內容提供者(Content Providers)使得應用程式可以訪問另一個應用程式的資料(如連絡人資料庫),或者共用它們自己的資料。

         3)資源管理員(Resource Manager)提供非代碼資源的訪問,如本地字串,圖形,和布局檔案( layoutfiles )。

         4)通知管理器(Notification Manager) 使得應用程式可以在狀態列中顯示自訂的提示資訊。

           5)Active Manager(Activity Manager) 用來管理應用程式生命週期並提供常用的導航回退功能。

  4、應用程式層

      Android系統會內建一些應用程式套件組合 包括email 用戶端,SMS 短訊息程式,日曆,地圖,瀏覽器,連絡人管理程式等。Android 應用程式使用架構的api並在架構下運行,所有的應用程式都是使用JAVA 語言編寫的。

  

總結:

     下層為上層服務,上層需要下層的支援,調用下層的服務,這種嚴格分層的方式帶來的極大的穩定性、靈活性和可擴充性,使得不同層的開發人員可以按照規範專心特定層的開發。

 

 

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.