深入理解 Android:Java 虛擬機 ART
內容描述
這是一部從源碼角度分析和講解Android虛擬機ART的鴻篇巨著,核心內容和價值體現在3個方面:
第一,細致、深入地分析了ART虛擬機的架構、設計與實現原理,能讓讀者對ART虛擬機有透徹瞭解;
第二,能讓Android系統工程師和應用工程師從底層瞭解整個Android系統的運行機理,從而寫出更高質量的應用;
第三,Java虛擬機是一個“龐然大物”,學習和理解的門檻較高,ART是迄今應用最為廣泛的JVM實現,本書為讀者學習JVM提供了獨特的視角和更為容易的路徑。
全書共14章:
第1章介紹了在學習ART虛擬機前需要準備的工具和環境,以及本書的內容結構和閱讀註意事項,建議仔細讀和反復讀;
第2~4章詳細講解了Class文件、dex文件和ELF文件的格式和內容,理解Class文件是學習JVM的第一步,dex和ELF是學習Dalvik虛擬機和ART虛擬機的前提和基礎;
第5章詳細講解了ART虛擬機的實現語言C++11,是閱讀ART源代碼必備的知識;
第6~8章詳細講解了ART虛擬機中與編譯和Runtime相關的大量知識,這是虛擬機的核心和難點;
第9章詳細講解了dex字節碼轉機器碼的核心進程dex2oat以及.oat和.art的文件格式;
第10~11章詳細講解了虛擬機的解釋執行、JIT部分以及異常的投遞和處理過程,以及JNI在ART虛擬機中的實現。
第12~14章詳細講解了虛擬機中Java線程的執行、內存分配和釋放、垃圾回收的原理與實現。
本書是經典叢書“深入理解Android”系列的第8本,繼承了該系列圖書嚴謹、細致、深入、編排考究的優點,相信所有Android工程師和Java工程師都能從中受益。