1

正如您从标题中看到的那样,出于某种原因,我需要使在 Minix 上运行 .class 文件成为可能(不需要编译器)。那么有人可以指出我的任何方向,建议一些文献或提供一些建议吗?一般来说,你会怎么做?

直到现在我才发现OpenJDK(但这并不是我想要的)。我还阅读了 Tanenbaum 的“操作系统设计和实现”。它让我对 minix 内部结构有了很多了解。

4

2 回答 2

1

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

您还需要选择一个运行时——OpenJDK 和 GNU Classpath 可能是最好的选择——并通过native在 C 中实现其方法将其移植到 MINIX。native方法通常与特定于平台的东西有关,例如对文件 I/ 的调用O,因此无法在独立于平台的 Java 语言中实现。

此 Wiki 页面上,您可能会发现许多其他有用的链接和资源。

于 2012-12-14T01:42:07.683 回答
0

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

于 2020-04-11T16:06:33.483 回答