注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)Android Runtime源碼解析

Android Runtime源碼解析

Android Runtime源碼解析

定 價(jià):¥79.00

作 者: 史寧寧
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302600848 出版時(shí)間: 2022-06-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  Android Runtime(ART)作為Android系統(tǒng)的核心組建,是Android應(yīng)用運(yùn)行及其效率的基礎(chǔ),了解ART的組成和執(zhí)行流程,有利于Android應(yīng)用開發(fā)者高效開發(fā)Android應(yīng)用。同時(shí),ART作為一種Java虛擬機(jī),也是廣大虛擬機(jī)開發(fā)者學(xué)習(xí)和改進(jìn)的目標(biāo),了解ART有助于虛擬機(jī)的開發(fā)和調(diào)優(yōu)。本書基于Android 10.0.0_r39源碼,分析了ART基礎(chǔ)、ART的compiler、ART的啟動(dòng)與運(yùn)行、ART中的垃圾回收。這些分析旨在為讀者搭建ART的基本框架,帶領(lǐng)讀者一起了解ART的基本情況,為進(jìn)一步了解ART打下基礎(chǔ)。本書適合想了解ART的App開發(fā)者、Android系統(tǒng)優(yōu)化開發(fā)者及虛擬機(jī)開發(fā)者閱讀,也適合高校學(xué)生學(xué)習(xí)虛擬機(jī)使用。

作者簡(jiǎn)介

  史寧寧,現(xiàn)任中國(guó)科學(xué)院軟件研究所智能軟件研究中心PLCT實(shí)驗(yàn)室項(xiàng)目主管。吉林大學(xué)計(jì)算機(jī)學(xué)院碩士,2012年起作為核心開發(fā)人員和項(xiàng)目經(jīng)理參與組織開發(fā)多個(gè)編譯器項(xiàng)目。長(zhǎng)期堅(jiān)持撰寫技術(shù)博客,其中“LLVM每日談”“方舟編譯器學(xué)習(xí)筆記”等專欄影響較大,曾出版圖書兩部。目前活躍在OSDT/HelloGCC/HelloLLVM、方舟編譯器、RISC-V等開源社區(qū),主要研究?jī)?nèi)容為Clang/LLVM、JVM等。

圖書目錄

第1章ART基礎(chǔ)

1.1虛擬機(jī)基礎(chǔ)

1.2ART發(fā)展歷史

1.3ART核心架構(gòu)

1.4源碼目錄介紹

1.5小結(jié)

第2章dex2oat工具介紹

2.1dex2oat入口代碼分析

2.2dex2oat的driver分析

2.3dex2oat driver的編譯函數(shù)

2.4DexToDexCompiler分析

2.5小結(jié)

第3章OptimizingCompiler介紹

3.1OptimizingCompiler類的JNI處理

3.2OptimizingCompiler:: Compile()

3.3HGraph的構(gòu)建

3.3.1構(gòu)建基于基本代碼塊的CFG

3.3.2構(gòu)建支配樹

3.3.3構(gòu)建SSA

3.4優(yōu)化

3.5寄存器分配

3.5.1PrepareForRegisterAllocation

3.5.2SsaLivenessAnalysis

3.5.3RegisterAllocator

3.6代碼生成

3.7OptimizingCompiler總結(jié)

3.8小結(jié)

第4章OptimizingCompiler優(yōu)化算法分析

4.1優(yōu)化算法框架

4.2常量折疊

4.3指令簡(jiǎn)化

4.4死代碼優(yōu)化

4.5循環(huán)體優(yōu)化

4.6指令下沉

4.7硬件平臺(tái)相關(guān)優(yōu)化pass及其實(shí)現(xiàn)

4.8小結(jié)

第5章ART啟動(dòng)分析

5.1ART啟動(dòng)中的虛擬機(jī)啟動(dòng)一

5.2ART啟動(dòng)中的虛擬機(jī)啟動(dòng)二

5.3ART啟動(dòng)中的JIT編譯器的創(chuàng)建

5.4ART啟動(dòng)中的Thread處理

5.5ART啟動(dòng)中的運(yùn)行時(shí)本地方法初始化

5.6ART啟動(dòng)中的其他本地方法的注冊(cè)

5.7Zygote進(jìn)程

5.7.1System Server進(jìn)程

5.7.2應(yīng)用進(jìn)程

5.8小結(jié)

第6章ART的執(zhí)行

6.1ART運(yùn)行基本流程

6.2Zygote進(jìn)程調(diào)用應(yīng)用程序

6.2.1Zygote.forkAndSpecialize

6.2.2ZygoteConnection.handleChildProc

6.3類的查找與定義

6.4方法的加載和鏈接

6.5方法的執(zhí)行

6.6小結(jié)

第7章ART GC實(shí)現(xiàn)

7.1GC的基本內(nèi)容

7.2ART GC回收方案介紹

7.3ART GC回收器的實(shí)現(xiàn)

7.3.1回收器的類型

7.3.2不同類型回收器的實(shí)現(xiàn)

7.4ART GC的分配器實(shí)現(xiàn)

7.4.1分配器與空間類

7.4.2分配器與回收器

7.5ART GC的使用流程

7.5.1分配器的使用

7.5.2回收器的使用

7.6小結(jié)

參考文獻(xiàn)

后記

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)