Android——架構和源碼包介紹

來源:互聯網
上載者:User

標籤:span   linux   記憶體回收機制   ons   一個   分組   抽象   pack   運行   

1. 說到Android的架構,大家第一眼想到的可能都是下面這張眾所周知的圖

(1) 應用程式層(applications):應用程式層主要是一些核心的應用程式套件組合,比如電話,簡訊,地圖,電子郵件等等。對應的源碼包在 packages/apps 下,裡麵包含了各種應用程式的源碼

(2) 應用程式框架層(application framework):這層是Android應用開發的基礎,包含了視圖管理器,電話管理器,等等,也提供了Android的四大組件。這個層主要就是提供了類似與各種組件使用的API。對應的源碼直接在 frameworks 下,裡麵包含了base包,包含了framework的一些基礎的代碼,大量使用C++編寫

(3) 系統庫層:該層主要由兩部分組成,一個是系統庫,一個是android運行時。

    android運行時比較簡單,主要包括了核心庫以及Dalvik虛擬機器,核心庫包含了大多數java語言需要的功能函數,同時包含了Android的核心庫。Dalvik虛擬機器主要完成了對生命週期的管理,線程的管理,堆棧的管理,記憶體回收機制以及相應的安全和異常的管理

    系統庫主要包含了9個子系統,就是所示的系統

    android運行時中的core libraries對應的源碼包在根目錄下的libcore

    android下的Dalvik虛擬機器對應的源碼包在根目錄下的dalvik

    系統庫對應的源碼包是根目錄下的bionic

(4) linux核心層:Android的核心系統服務都是依賴與linux核心的,比如記憶體,進程等的管理,驅動模型以及網路通訊協定棧。核心層也是硬體和軟體的抽象層,一些驅動,比如顯卡,鍵盤,網路攝影機,wifi等等

該層對應的源碼是在根目錄下的kernel中

硬體抽象層(HAL)則對應的是根目錄下的hardware

 

更加詳細的目錄可以去看這個部落格:http://blog.csdn.net/fengliang191/article/details/40678731

 

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.