Jikes研究虚拟机

✍ dations ◷ 2025-02-23 16:54:28 #虚拟化软件

Jikes研究虚拟机(Jikes Research Virtual Machine,简称Jikes RVM)是一种成熟的用于执行Java程序的虚拟机,其早期版本与当前版本分别在通用公共许可证(英语:Common Public License)(CPL)与Eclipse公共许可证(EPL)下开放代码。与其他以Java编写的虚拟机不同的是,Jikes RVM采用了元循环技术。

Jikes RVM采用了元循环技术,因而其需要运行在一个引导Java虚拟机(JVM)上来创建启动镜像。启动镜像在运行时由一个小型的C装入程序加载,其本质是Jikes RVM启动必须的对象的集合,这些对象则是利用引导JVM的反馈所创建。

编译器在VM Magic里为一个类别生成不同的代码(而非字节码)。VM Magic类别允许对内存的直接访问,是影响内存管理工具包的性能的关键所在。VM Magic类别被包含于org.vmmagic包内,同时也为其他的Java项目所使用。

内存管理工具包(MMTk)是在Jikes RVM与其他项目(如Singularity系统和Rotor软件项目)都有使用的垃圾精确回收器的一个集合。正如Jikes RVM其他部件一样,MMTk是用Java实现的,但主要还是依赖于VM Magic。

Jikes RVM已经可以使用Apache Harmony与GNU Classpath类库,对OpenJDK类库的实验性支持也已加入。

Jikes RVM使用基线编译器来快速地为特定的架构生成代码,而后的动态自适应编译利用带有如栈替换等特性的优化编译器重编译代码,其中动态自适应编译系统使用成本-收益分析模型(英语:Cost–benefit analysis)。

Jikes RVM的运行时有着许多新颖的特性,例如快速锁定机构,协作调度机构以及对异常的快速收集与调度的支持。

Jikes RVM可以支持使用Power PC(即ppc)与IA-32(即x86)指令集的处理器。

正如其名所示,Jikes RVM是个研究项目,因而功能侧重于用于研究新技术。

Jikes RVM也出现在了07、08、10、11年的Google编程之夏比赛中。

相关

  • 脱臼脱臼是指骨头末端因跌倒或骨头受撞击等外力影响而脱离关节的位置,常发生在臀部、肩膀(肩脱臼)、肘部、指头和膝盖(膝关节脱位)。意外脱臼时须将患处以夹板或吊带等物固定,不可贸然
  • 颤藻目颤藻目(学名:Oscillatoriales),为一类原核生物,归于蓝菌门(Cyanophyta)蓝菌纲(Cyanobacteria)。
  • 锌锰电池碳锌电池,又称碳锌干电池、碳性电池、碳性电芯、干电池、酸性锌碳电池。碳锌电池有一层由锌构成的外壳,作为电池的负极。碳锌电池是从液体Leclanché电池发展而来。传统或一般
  • 高架式投影机透镜式投影仪(Overhead projector)是一种将透明幻灯片放置在书写玻璃台上,利用灯光透过玻璃台进行照射成像的投影仪。这种投影仪方便即时书写,适合在课堂、办公室中进行讲解时使
  • 神奇的数字:7±2《神奇的数字:7±2:我们信息加工能力的局限》(The Magical Number Seven, Plus or Minus Two: Some Limits on Our Capacity for Processing Information)是美国认知心理学家乔
  • 水力学水力学是研究液体机械相关特性的学科,是流体力学的一部分。早期研究水力学的包括古希腊的发明家希罗(Hero of Alexandria)及克特西比乌斯(Ctesibius),不过他们对于实际应用的研
  • 法兰西的路易 (1729年–1765年)法兰西的路易(法语:Louis de France 1729年9月4日-1765年12月20日)即路易-斐迪南(Louis Ferdinand),是法国国王路易十五与妻子玛丽·蕾捷斯卡唯一活下来的儿子。作为王位继承人,他成
  • 罗伯特·兰登罗伯特·兰登教授(Robert Langdon)是美国作家丹·布朗小说中的虚构角色,是哈佛大学宗教象征和符号学教授。兰登教授最早出场于丹·布朗2000年的小说《天使与魔鬼》,随后在《达·
  • 赫斯图赫斯图绘出指定星系赫罗图在不同颜色-星等范围中的恒星密度。这种图是由赫斯在1924年命名的。他使用的年代至少延续至1948年。右图是利用斯隆数字巡天释放的公开数据绘制的
  • LibreswanLibreswan,一个开放源代码软件专案,在Linux平台上实作IPsec功能。因为对于Openswan名称的所有权产生争议,openswan的开发者与openswan的产品经理保罗·沃斯特(Paul Wouters)进行