GNU gij可以被视为Java虚拟机吗?

时间:2010-12-25 23:13:50

标签: jvm java

我没有看到gij被列为http://en.wikipedia.org/wiki/List_of_Java_virtual_machines上的Java虚拟机之一,我也没有在这里发帖子谈论这个。谁能告诉我gij是否是JVM,如果没有,请解释gij中缺少的是什么或者有什么区别?感谢。

2 个答案:

答案 0 :(得分:2)

来自The Java Virtual Machine Specification

  

但是,Java虚拟机可以   不假设任何特别的   实施技术,主持人   硬件或主机操作系统。它   本质上不是解释,但可以   同样也要实施   编译其指令集   一个硅CPU。它也可能是   以微码或直接实现   在硅片中。

因此GCJ可以称之为Java虚拟机和GIJ,因为它是一个解释器,更是如此。 JVM的唯一要求是它执行Java字节代码。

如果您仔细查看维基百科页面,可以在Java虚拟机的“基础和主要实现”中的底部框中看到GCJ。

答案 1 :(得分:0)

我没有看到任何明显的理由不将GNU gij称为Java虚拟机...模糊显而易见的一点是,由于Oracle对TCK的立场,它无法验证。

我会说这是维基百科列表中的“错误”,而不是对gij的反思。

(只是查看列表,我发现并修复了另一个错误。它说JNode使用了GNU Classpath,它现在已经没有用了几年。如果列表出错了,那就错了其他的事情。)