目前 Oracle 有两个 JVM,一个是 JRockit ,这是两年前收购 BEA Systems 时得到的;另一个则是 Sun 的 Hotspot VM,这是前不久收购 Sun 时得到的。在上个月举行的 Sun-Oracle 未来路线图会议上,Oracle 的管理团队表示要合并这两个项目。Oracle 首席工程师、Sun 前雇员 Mark Reinhold 最近在播客上透露该合并计划“仍在进行当中”,为此也“召开了很多会议”。
Reinhold 说到:
从长期的合并计划来看,目前很难对这二者作出取舍。现在我们还不会停止这两个 JVM 的开发工作,因为有很多客户的产品是运行在这两个 JVM 之上并且使用了每个 JVM 独有的特性。我们可不想搞出什么震荡,那样只会把系统搞死,但还是衷心希望未来能有 JVM 一统天下。
Reinhold 说这个计划至少还需要一年半到两年的时间才能成行。
这两个 JVM 各具优缺点,因此最好的方式还是取其净化,弃其糟粕。Reinhold 说“在 Oracle 内,无论是工程团队还是管理团队都在尽最大努力找出每个 JVM 的优点”。他接着说到:
坦率地说,我们这几年一直在嫉妒 JRockit 中的某些特性,其任务控制特性就非常棒。
而 HotSpot 的性能优势是比较明显的,他说到“我们对 HotSpot 代码基,尤其是 server 编译器的印象是其有很多的 head room,这是一个更加复杂的系统”。
前几个月我们一直在学习 JRockit,这真是一段令人难忘的时光。JRockit 绝对是世界一流的 VM,但其内部却是那么的不同。JRockit 和 HotSpot 各具优势,因此我们将要创建一个非常帅的项目——综合 JRockit 和 HotSpot 各自的优势。
Reinhold 推测合并后的 VM 将使用 JRockit 的垃圾回收器与服务功能,使用 HotSpot 的运行时编译器与混合的运行时系统。
在播客中,Reinhold 还提到了 JDK 7 的模块化特性(模块化可以让 Java 更有效地进入到小型设备领域)、通过 invokeDynamic 实现的多语言能力以及通过 Project Coin 提升 Java 语言本身的生产力。开发者应该玩玩 Jigsaw,而 openJDK Build 88 则将于下月中旬发布。
查看英文原文: Mark Reinhold Talks About JRockit/Hotspot Integration
评论