在第1卷的基礎上,采用情景分析的方式對AndroidDalvik虛擬機的源代碼進行了有針對性的分析,圍繞類加載、解釋器、即時編譯、本地方法調用、內存管理及反射機制等功能模塊展開分析,主要幫助讀者從微觀上更深入地理解Dalvik虛擬機中各功能模塊的實現原理及運行機制。
第2卷共6章,第1章介紹類加載機制,包括其整體的工作流程和機制,詳細講解了其中的三個階段,並以一個實例驗證了源碼分析的結果;第2章介紹了Dalvik虛擬機中至關重要的內存管理機制,詳細講解了其實現的兩種算法;第3章分析了JNI模塊的實現原理,在分析源碼的基礎上,細致入微地介紹了為何用JNI編程會提升程序的執行效率;第4章以反射機制的一個代碼示例開始,介紹了其涉及的API,並從宏觀到微觀詳細介紹了反射機制;第5章介紹了實現解釋器的兩種不同的技術,比較了Fast解釋器和Portable解釋器的不同及各自的優劣勢,第6章從介紹最近在解釋器中非常火的JIT(即時編譯)開始,到JIT的所謂的前端分析,再到JIT的后端代碼生成,為本書畫上一個圓滿的句號。
通過閱讀本書,讀者可以了解Dalvik虛擬機在Android應用程序運行過程中所扮演的重要角色及其不可替代的價值。
第2卷共6章,第1章介紹類加載機制,包括其整體的工作流程和機制,詳細講解了其中的三個階段,並以一個實例驗證了源碼分析的結果;第2章介紹了Dalvik虛擬機中至關重要的內存管理機制,詳細講解了其實現的兩種算法;第3章分析了JNI模塊的實現原理,在分析源碼的基礎上,細致入微地介紹了為何用JNI編程會提升程序的執行效率;第4章以反射機制的一個代碼示例開始,介紹了其涉及的API,並從宏觀到微觀詳細介紹了反射機制;第5章介紹了實現解釋器的兩種不同的技術,比較了Fast解釋器和Portable解釋器的不同及各自的優劣勢,第6章從介紹最近在解釋器中非常火的JIT(即時編譯)開始,到JIT的所謂的前端分析,再到JIT的后端代碼生成,為本書畫上一個圓滿的句號。
通過閱讀本書,讀者可以了解Dalvik虛擬機在Android應用程序運行過程中所扮演的重要角色及其不可替代的價值。