2017年8月27日 星期日

[android]系統架構及開機流程圖


一個大陸網站整理不錯系統架構流程
http://blog.csdn.net/CCJHDOPC/article/details/54316154

[android]boot.art and boot.oat 解釋

1. boot.art是一個header + class object的映射內存。
   主要包含的是在framework/preload-classes.txt裡面列出的類的對象。
2. boot.art裡面使用的都是絕對地址,因此boot.art必須被加載到固定位置
3. boot.oat裡面如果要使用某個類、field、method,只要它在boot.art中被
    定義,那麼就可以直接使用決定地址來訪問
4. boot.art在ART中放在imagespace中,GC除外
5. boot.art和boot.oat的加載地址都是32位的,即便是在64位設備上,高32位都是0.
6.不要以為把boot.art映射到內存,裡面的class就可以直接用了。
   那些初始化內部代碼native方法或者有loadlibrary的代碼,還必須在加載後做最
   後的初始化,否則類的初始化不能有效完成

參考出處:https://www.zhihu.com/question/37786499/answer/92280385