深入解析Java虚拟机HotSpot

源码分析为基础,从运行时、垃圾回收器、即时编译器3个维度解析HotSpot VM的底层实现和工作机制,同时与上层的Java语言和库结合,指导读者解决JVM开发、JVM调优和JVM排错方面遇到的各种问题。

很多JVM的底层技术细节你是否只了解表面?

面对JVM Crash或性能调优方面的问题时你是否会束手无策?

面对上层Java应用发生的偏离预期的行为是否会不知所措?

广度与深度兼顾:广度上涵盖Graal VM、CDS、Instrumentation、编译重放、非标准字节码、RTM锁、JIT调试工具、EpsilonGC/ShenandoahGC/ZGC、G1字符串去重等重要知识点;深度上深入解析了C1、C2、G1GC、ObjectMonitor、Mutex、模板解释器等的底层实现。

全书共 11 章,参考 OpenJDK 社区的划分方式来组织内容,分为运行时、即时编译器、垃圾回收器三个部分。

第一部分(第1~6章) 运行时

首先,从Java生态系统的角度,简单介绍了JDK、JVM、JEP、HotSpot VM、Graal VM,引导读者快速进入Java虚拟机的世界;然后从源码的角度深入解析了HotSpot VM的类可用机制、对象和类、运行时、模板解释器和并发设施。

第二部分(第7~9章) 即时编译器

首先重点介绍了即时编译器技术、编译理论、编译器调试方法等编译器的基础知识;然后详细讲解了C1和C2两个即时编译器的实现原理、工作机制和优化方法。

第三部分(第10~11章) 垃圾回收器

首先全面介绍了Epsilon GC、Serial GC、Parallel GC、CMS GC、G1 GC、Shenandoah GC、ZGC等各种垃圾回收器,然后重点剖析了G1 GC。

深入解析Java虚拟机HotSpot》既考虑到内容的广度也关注了技术的深度,详细描述了虚拟机的底层实现,并与上层Java语言或者库结合,以实用为目标展开介绍,同时还讨论了它们的深刻意义。

从内容广度的角度看,《深入解析Java虚拟机HotSpot》除了讨论耳熟能详的Java虚拟机技术外,还详细讨论了业界最新的通用虚拟机平台Graal VM、CDS/AppCDS/DynamicCDS、Instrumentation库、编译重放、非标准字节码、栈上替换,RTM锁、JIT编译器IR、JIT编译器可视化工具、编译逃离、EpsilonGC/ShenandoahGC/ZGC、G1字符串去重等技术,其中部分技术代表了社区的最新动向。

从内容深度的角度看,《深入解析Java虚拟机HotSpot》详细讨论了:

G1 GC的回收策略和底层代码实现;

C1编译器的HIR和LIR,以及针对不同IR上应用的优化;

C2编译器的Ideal Graph以及平台无关的优化技术;

CPU重排序与ObjectMonitor、Mutex的底层实现;

模板解释器的代码片段生成逻辑和字节码模板生成逻辑;

深入解析Java虚拟机HotSpot

PC版:http://product.china-pub.com/8077278

移动版:http://m.china-pub.com/touch/touchproduct.aspx?id=8077278

深入解析Java虚拟机HotSpot

 


版权声明:本文为weixin_44522876原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。