Linux 将JVM移植到MINIX

Linux 将JVM移植到MINIX,linux,jvm,porting,minix,Linux,Jvm,Porting,Minix,正如您从标题中看到的,出于某种原因,我需要在Minix上运行.class文件(不需要编译器)。有人能给我指点方向,给我一些参考资料或建议吗?一般来说,你会怎么做 到目前为止,我找到了OpenJDK(但这并不是我想要的)。我也读过Tanenbaum的“操作系统设计和实现”。它让我对minix的内部结构有了很多了解 如果您只想运行.class文件而不太关心性能,可以创建字节码解释器,这可能比移植/创建完整的编译器更简单。您可以找到这些类文件的详细格式,以及指定VM的行为 您还需要选择一个运行时——O

正如您从标题中看到的,出于某种原因,我需要在Minix上运行.class文件(不需要编译器)。有人能给我指点方向,给我一些参考资料或建议吗?一般来说,你会怎么做


到目前为止,我找到了
OpenJDK
(但这并不是我想要的)。我也读过Tanenbaum的“操作系统设计和实现”。它让我对minix的内部结构有了很多了解

如果您只想运行
.class
文件而不太关心性能,可以创建字节码解释器,这可能比移植/创建完整的编译器更简单。您可以找到这些类文件的详细格式,以及指定VM的行为

您还需要选择一个运行时——OpenJDK和GNU类路径可能是最好的选择——并通过在C中实现其
native
方法将其移植到MINIX中。
native
方法通常涉及特定于平台的内容,比如对文件I/O的调用,因此不能在独立于平台的Java语言中实现


您可能会发现许多其他链接和资源对您很有用。

如果您只想运行
.class
文件而不太关心性能,您可以创建字节码解释器,这可能比移植/创建完整的编译器更简单。您可以找到这些类文件的详细格式,以及指定VM的行为

您还需要选择一个运行时——OpenJDK和GNU类路径可能是最好的选择——并通过在C中实现其
native
方法将其移植到MINIX中。
native
方法通常涉及特定于平台的内容,比如对文件I/O的调用,因此不能在独立于平台的Java语言中实现


还有许多其他链接和资源,您可能会发现它们很有用。

作者(我是作者)可以在Minix 3.2上使用(未经3.3测试)。它是一个具有Java5标准库的解释器(即无JIT)。使用X11后端对AWT/Swing的支持有限。

的(我是作者)可以在Minix 3.2上工作(未使用3.3测试)。它是一个具有Java5标准库的解释器(即无JIT)。使用X11后端对AWT/Swing的支持有限。

太好了,谢谢,我想到了解释器,但不知道它是否可行。另外,如果可能,你能给我一些关于这个项目所需时间的粗略估计吗?我不完全确定我要做什么:)好吧,这取决于你的技能水平和以前的经验,以及你想要的端口的完整程度:)我一直在致力于将OpenJDK移植到浏览器(参见我链接的wiki页面),我们中的2-3个人花了大约1.5个月的时间才运行
javac
。然而,我们并不是全职的,还有一个问题,你觉得把JAMV移植到MINIX而不是openJDK怎么样?你认为会更快吗?移植不是执行,性能是不相关的。我没有任何JamVM的经验,所以我很难说。太好了,谢谢你,我考虑过解释器只是不知道它是否可能。另外,如果可能的话,你能给我一些这个项目所需时间的粗略估计吗?我不完全确定我要做什么:)好吧,这取决于你的技能水平和以前的经验,以及你想要的端口的完整程度:)我一直在致力于将OpenJDK移植到浏览器(参见我链接的wiki页面),我们中的2-3个人花了大约1.5个月的时间才运行
javac
。然而,我们并不是全职的,还有一个问题,你觉得把JAMV移植到MINIX而不是openJDK怎么样?你认为会更快吗?移植不是执行,性能是不相关的。我没有任何JamVM的经验,所以我很难说。