送书|深入理解 Java 虚拟机 HotSpot

HelloGitHub

共 1788字,需浏览 4分钟

 ·

2021-04-26 17:06

送书规则:

  • 在本文末尾留言即可参与

  • 随机抽出 5 位幸运读者

  • 奖品《深入理解 Java 虚拟机 HotSpot》一本

  • 开奖时间:4.29 中午 12:00


感谢 机械工业出版社华章IT 赞助



横看成岭侧成峰,远近高低各不同。不同的人从不同的角度看到的 HotSpot VM 也不尽相同。从 Java 应用开发者的角度出发,虚拟机如图下所示:


Java 应用开发者关注 Java 语言,关注应用的实现和库的实现,用合法的 Java 代码表达思,通过编译器工具编译产出字节码交给虚拟机运行。在他们眼中虚拟机是一个黑盒,所以更期望虚拟机的行为能遵循 Java 相关规范,这样才能放心地用语言集实现应用程序或库,进而供用户使用。

虚拟机开发者关注虚拟机内部,在他们眼中,虚拟机不再是黑盒,而是各个组件根据规则交互的一套“Java操作系统”。当上层应用出现问题时,他们可以从虚拟机层找出问题致因,当上层语言需要新特性、新功能,或者下层操作系统提供新特性时,他们可以在虚拟机层实现,然后以某种方式暴露给上层。从虚拟机开发者的角度出发,虚拟机如下图所示:


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

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

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


今天为你推荐一本新书《深入解析 Java 虚拟机 HotSpot,这本书以源码分析为基础,从运行时、垃圾回收器、即时编译器 个维度全面、深入解析 HotSpot VM 的底层实现和工作机制,同时与上层的 Java 语言和库结合,指导读者解决 JVM 开发、JVM 调优和 JVM 排错方面遇到的各种问题。作者是阿里云 Java 技术专家,热衷于研究编程语言的设计与实现,对 Java 虚拟机和编译器都有很深入的研究。


 
广度与深度兼顾:广度上涵盖 Graal VMCDSInstrumentation、编译重放、非标准字节码、RTM 锁、JIT 调试工具、EpsilonGC/ShenandoahGC/ZGCG1 字符串去重等重要知识点;深度上深入解析了 C1C2G1GCObjectMonitorMutex、模板解释器等的底层实现。
 
全书共 11 章,参考 OpenJDK 社区的划分方式来组织内容,分为运行时、即时编译器、垃圾回收器三个部分。
第一部分 运行时
首先,从 Java 生态系统的角度,简单介绍了 JDKJVMJEPHotSpot VMGraal VM,引导读者快速进入 Java 虚拟机的世界;然后从源码的角度深入解析了 HotSpot VM 的类可用机制、对象和类、运行时、模板解释器和并发设施。
第二部分 即时编译器
首先重点介绍了即时编译器技术、编译理论、编译器调试方法等编译器的基础知识;然后详细讲解了 C1 和 C2 两个即时编译器的实现原理、工作机制和优化方法。
第三部分 垃圾回收器
首先全面介绍了 Epsilon GCSerial GCParallel GCCMS GCG1 GCShenandoah GCZGC 等各种垃圾回收器,然后重点剖析了 G1 GC

大多数程序员都有中年危机,而深入研究技术,将技术做深、做精、做专是技术人员避免中年危机的明智之举。对于Java程序员来说,这本书能带你走向Java底层,深入了解HotSpot虚拟机的运行原理与实现机制,是走向Java技术巅峰的不二选择。

—END—

👆「点击关注」更多惊喜等待你的发现👆

浏览 42
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报