不需要操作系统的Java VM?

时间:2009-04-18 13:24:28

标签: java jvm vmware virtualization xen

我知道BEA正在研究LiquidVM,它不需要底层操作系统,但想知道开源社区中是否有人在开发类似的东西。

理想情况下,我想找到一个实现,其中VM由OS引导加载程序直接加载。

9 个答案:

答案 0 :(得分:13)

与SANOS不同,JNode操作系统是一个完整的操作系统,具有许多支持的设备,文件系统,网络堆栈,GUI堆栈,命令外壳和大约50个命令等等。 JNode目前在x86(32位)上运行,启用了一个处理器,但x86-64和多处理器版本正在开发中。 (JNode是99.99%Java。移植到新架构将需要重写汇编程序中0.01%的代码,创建/修改硬件特定的驱动程序......并为新架构编写本机代码编译器。)

我们目前有7位活跃的开发人员,但我们一直在寻找新人加入团队,尤其是那些了解Java和代码生成,垃圾收集器,驱动程序等的人。

(为了它的价值,我们使用最新版本的OpenJDK类库:最后一次计算为1.6u24。)

答案 1 :(得分:4)

Sun项目Squawk是一个在硬件而不是底层操作系统上运行的VM。对于像Squawk是操作系统的Sun SPOT这样的嵌入式设备很有用。

Squawk根据GPLv2获得许可。

答案 2 :(得分:4)

还有Project Guest VM,这是一个托管在Xen管理程序上的JVM。虽然主页上的细节似乎相当清淡,但这个项目也有Google Tech Talk

答案 3 :(得分:3)

你需要什么?

也许Sanos可以在你可以使用的硬件和JVM之间给你一小段代码?

http://www.jbox.dk/sanos/

答案 4 :(得分:1)

JNode OS是一个主要用Java编写的操作系统。

答案 5 :(得分:1)

Oracle似乎再朝这个方向发展

  

通过甲骨文收购BEA Systems获得......   甲骨文已经复苏了先锋派   虚拟化技术:Java   直接运行的虚拟机   管理程序,没有操作   系统

答案 6 :(得分:0)

我看到和听到的一小段片段。

60年代/​​ 70年代的麻省理工学院开发了一台Lisp机器,这是一台本质上理解Lisp的机器,我认为它们也将它商业化了。

我在2002年左右听说有人正在用FPGA或ASIC在芯片上开发JVM。

麻省理工学院/ Lisp的故事是真的,我在他们的博物馆看过,有人知道芯片上是否有关于JVM的真相吗?

感谢, 马丁。

答案 7 :(得分:0)

我对java很新,而且我对电子学有一定的了解。

JVM是一个实际在系统上运行的虚拟macjine。它可能是windows或solares x86平台。 但据我所知,JVM本身就是我们编译的字节码系统。对于字节代码,JVM虚拟化其自己的ALU,Heap,Stack extra。它甚至有自己的机器和汇编语言。

因此,如果我们能够在硬件芯片上实现JVM规范,那么它将不再是JVM,但我将成为独立的Java机器,我们可以在其上开发100%用java编写的操作系统。

因此,在这种情况下,JVM不是一个操作系统,而是一个直接理解java字节码的系统。

答案 8 :(得分:0)

JOE,Java on Everything,可以在没有操作系统的情况下运行Java。都是Java的,https://github.com/joekoolade/JOE

JOE可以通过将操作系统内置到程序中来在没有操作系统的情况下运行Java程序。这使程序更易于配置和部署。 JOE可以使任何Java程序员成为嵌入式开发人员。

JOE是一个进程虚拟机,可以在没有操作系统的情况下运行Java应用程序。它通过虚拟化操作系统和硬件将操作系统构建到程序中。这消除了操作系统,硬件,用户代码和虚拟机之间的界限。用户/主管交叉,程序安全性,内存保护,虚拟寻址和JNI库接口的开销和复杂性已替换为Java语言中更简单,更有效的机制。 JOE通过在Java中实现将所有这些层无缝地融合在一起。这种虚拟化的Java环境提供了从应用程序到硬件的安全,安全,一致且一致的面向对象的操作。