虚拟机设计与实现

李晓峰

出版时间

2019-12-31

ISBN

9787115527288

评分

★★★★★
书籍介绍

本书从一位虚拟机(VM)架构师的角度,以易于理解、层层深入的方式介绍了各种主题和算法,尤其是不同VM通用的主要技术。这些算法用图示充分解释,用便于理解的代码片段实现,使得这些抽象概念对系统软件工程师而言具像化并可编程。书中还包括一些同类文献中较少涉及的主题,例如运行时辅助、栈展开和本地接口。本书集理论性与实践性于一身,不仅结合了高层设计功能与底层实现,而且还结合了高级主题与商业解决方案,是VM设计和工程实践方面的理想参考读物。

【作者简介】

李晓峰(Xiao-Feng Li)

长期从事系统软件的研究与开发,在并行计算、操作系统、编译器和语言设计方面有着丰富的技术经验。Apache Harmony JVM的主要贡献者,所创建的一个微内核VM被发展为Intel Micro Runtime。目前在一家大型科技公司任技术副总裁,致力于定义和开发基于移动和智能设备的下一代分布式操作系统。拥有计算机科学博士学位,在闲暇时热衷于人机交互方式的探索。

【译者简介】

单业

计算机专业硕士,软件工程师,曾供职于多家软件公司,从事软件开发工作,现居于上海。译有《你不知道的JavaScript》中卷及下卷。

精彩摘录
  • "//var_1 = var_2 + 2; 1: iload_1 ; push variable 1 on stack 2: iconst_2 ; push constant 2 on stack 3: iadd ; add the stack top two items 4: istore_1 ; pop stack and store to variable 1"
  • "14.2分代式与非分代式算法之间的适应性调整 如果堆被分割为NOS和MOS,关于如何找到活跃对象,NOS上的部分堆回收有两个设计选。一个选择是从根集开始遍历整个堆,但是只回收NOS。它把NOS的活跃对象移动到MOS,但是MOS 中已有的对象保持不动。尽管MOS对象没有被回收,但回收器必须遍历MOS,因为NOS中的某些活跃对象只能通过包含MOS对象的路径到达。如果回收器不遍历MOS,这些对象就不况为活跃,这是错误的…………"
  • "第16章针对响应性的GC优化 停止世界(stop-the-world,STW)式垃圾回收(GC)有一个明显的缺点。在回收过程中。应用程序需要被暂停。在服务器系统中这是个问题。事务处理延迟会对业务有很大影响。在客机系统中它也是不受欢迎的、响应性能不良也会影响用户交互体验。减少回收暂停时间是GC社区的最热门主题之一。 减少回收暂停时间的常用技术是让回收和修改并发运行。它们可以交替执行或并行执行。并行执行中,回收器和修改器可以在多核平台不同核上的不同线程中同时运行。交替执行中,回收器与修改器并不同时运行,而是相互交错运行。 ①交替执行把单次回收分割为几个更短的阶段,因此把单独一次应用程序暂停减少为几"
作者简介
【作者简介】 李晓峰(Xiao-Feng Li) 长期从事系统软件的研究与开发,在并行计算、操作系统、编译器和语言设计方面有着丰富的技术经验。Apache Harmony JVM的主要贡献者,所创建的一个微内核VM被发展为Intel Micro Runtime。目前在一家大型科技公司任技术副总裁,致力于定义和开发基于移动和智能设备的下一代分布式操作系统。拥有计算机科学博士学位,在闲暇时热衷于人机交互方式的探索。 【译者简介】 单业 计算机专业硕士,软件工程师,曾供职于多家软件公司,从事软件开发工作,现居于上海。译有《你不知道的JavaScript》中卷及下卷。
目录
第一部分 虚拟机基础
第1章 虚拟机简介 2
1.1 虚拟机类型 2
1.2 为什么需要虚拟机 3
1.3 虚拟机示例 4

显示全部
用户评论
看到100页,迫不及待来写书评。本人看过最好的虚拟机技术书籍,五星推荐!
全面介绍JVM各个模块的作用,尤其对内存管理部分介绍颇多。
周志明老师的书语言通俗,但细节不够,有隔靴搔痒之痛。而这本书正好详细介绍了jvm的各种细节,伪代码详实,垃圾回收算法讲解细致。看完这本书之后去看jvm源码会清晰很多!
不求甚解
2020.11.28 ~ 2021.03.07
对于不了解jvm的人来说,没有什么可读性。
都是一笔带过,不够深入。
下载
收藏