2009-09-03 70 views
-2

如果我想开发适用于Windows和Linux的工具/应用程序的JVM(Java虚拟机),那么架构/系统级别的更改必须做什么?JVM的系统级更改

基本上,什么是JVM的Windows体系结构差异Windows & Linux?

感谢,

纳文

+1

什么是“系统级别更改”?你想要做出这样的改变?并请定义“嵌入”。 由于JVM确实存在于Windows和Linux中,所以我说你根本不需要改变这两者就可以为它们编写JVM。 – 2009-09-03 11:42:25

+0

@Sauer,对,Windows和Linux都存在JVM。我的问题是SUN已经在JVM上做了哪些更改,以便在Windows以及Linux OS上移植它。我的意思是,JVM与Windows和Linux在体系结构上有什么不同? – Naveen 2009-09-03 11:56:07

回答

2

在这里最好的答案我认为将指向你在source code并邀请你看看。

“建筑差异” - 可能无。这两个虚拟机的架构可能会相同。所述体系结构的实现将有所不同。差异将是: 任何命中本机操作系统调用。想到两个例子:线程和UI。

1

有一个什么样的参与JVM这里一个很好的概述:

http://www.artima.com/insidejvm/ed2/jvm.html

我猜选择的语言用于实现JVM会C++和内存管理,线程管理,io等低层次的东西,它将与特定操作系统提供的API进行交互。像字节码解释这样的更高级功能在平台之间可能是常见的。

在实现与JVM类似的东西方面,您的问题的答案(以及任务的难度)取决于您需要的功能集。不过请记住,虚拟机(Java和其他)部分是操作系统的抽象,并且通常反映了操作系统提供的功能。