Android Runtime 源碼解析
史寧寧
買這商品的人也買了...
-
$650$553 -
$1,068$1,015 -
$948$901 -
$862深入理解 Android:Java 虛擬機 ART
-
$520$406 -
$780$616 -
$480$379 -
$446Android核心編程——Activity、BroadcastReceiver、Serv
-
$654$621 -
$520$406 -
$709Android 編程權威指南, 4/e (Android Programming: The Big Nerd Ranch Guide, 4/e)
-
$454AI 探視人類情感原理與實踐 — 人工智能驅動的音樂信息檢索
-
$680$530 -
$520$390 -
$414$393 -
$680$510 -
$720$562 -
$534$507 -
$403全光家庭組網與技術
-
$658新一代通用視頻編碼 H.266/VVC:原理、標準與實現
-
$580$458 -
$600$468 -
$880$695 -
$600$468 -
$630$498
相關主題
商品描述
Android Runtime(ART)作為Android系統的核心組建,是Android應用運行及其效率的基礎,瞭解ART的組成和執行流程,有利於Android應用開發者高效開發Android應用。同時,ART作為一種Java虛擬機,也是廣大虛擬機開發者學習和改進的目標,瞭解ART有助於虛擬機的開發和調優。 本書基於Android 10.0.0_r39源碼,分析了ART基礎、ART的compiler、ART的啟動與運行、ART中的垃圾回收。這些分析旨在為讀者搭建ART的基本框架,帶領讀者一起瞭解ART的基本情況,為進一步瞭解ART打下基礎。 本書適合想瞭解ART的App開發者、Android系統優化開發者及虛擬機開發者閱讀,也適合高校學生學習虛擬機使用。
目錄大綱
目錄
第1章ART基礎
1.1虛擬機基礎
1.2ART發展歷史
1.3ART核心架構
1.4源碼目錄介紹
1.5小結
第2章dex2oat工具介紹
2.1dex2oat入口代碼分析
2.2dex2oat的driver分析
2.3dex2oat driver的編譯函數
2.4DexToDexCompiler分析
2.5小結
第3章OptimizingCompiler介紹
3.1OptimizingCompiler類的JNI處理
3.2OptimizingCompiler:: Compile()
3.3HGraph的構建
3.3.1構建基於基本代碼塊的CFG
3.3.2構建支配樹
3.3.3構建SSA
3.4優化
3.5寄存器分配
3.5.1PrepareForRegisterAllocation
3.5.2SsaLivenessAnalysis
3.5.3RegisterAllocator
3.6代碼生成
3.7OptimizingCompiler總結
3.8小結
第4章OptimizingCompiler優化算法分析
4.1優化算法框架
4.2常量折疊
4.3指令簡化
4.4死代碼優化
4.5循環體優化
4.6指令下沉
4.7硬件平臺相關優化pass及其實現
4.8小結
第5章ART啟動分析
5.1ART啟動中的虛擬機啟動一
5.2ART啟動中的虛擬機啟動二
5.3ART啟動中的JIT編譯器的創建
5.4ART啟動中的Thread處理
5.5ART啟動中的運行時本地方法初始化
5.6ART啟動中的其他本地方法的註冊
5.7Zygote進程
5.7.1System Server進程
5.7.2應用進程
5.8小結
第6章ART的執行
6.1ART運行基本流程
6.2Zygote進程調用應用程序
6.2.1Zygote.forkAndSpecialize
6.2.2ZygoteConnection.handleChildProc
6.3類的查找與定義
6.4方法的加載和鏈接
6.5方法的執行
6.6小結
第7章ART GC實現
7.1GC的基本內容
7.2ART GC回收方案介紹
7.3ART GC回收器的實現
7.3.1回收器的類型
7.3.2不同類型回收器的實現
7.4ART GC的分配器實現
7.4.1分配器與空間類
7.4.2分配器與回收器
7.5ART GC的使用流程
7.5.1分配器的使用
7.5.2回收器的使用
7.6小結
參考文獻
後記