不需要操作系统的Java虚拟机?

不需要操作系统的Java虚拟机?,java,jvm,vmware,virtualization,xen,Java,Jvm,Vmware,Virtualization,Xen,我知道BEA正在开发不需要底层操作系统的LiquidVM,但我想知道开源社区中是否有人在开发类似的东西 理想情况下,我希望找到一个由操作系统引导加载程序直接加载虚拟机的实现。有一个Sun项目,它是一个在硬件上而不是在底层操作系统上运行的虚拟机。适用于嵌入式设备,如操作系统where Squawk Squawk根据GPLv2获得许可。您需要什么 也许Sanos可以在硬件和JVM之间为您提供一小块代码,供您使用 还有一个,它是Xen虚拟机监控程序上托管的JVM。虽然主页上的细节似乎不多,但也有一些关

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

理想情况下,我希望找到一个由操作系统引导加载程序直接加载虚拟机的实现。

有一个Sun项目,它是一个在硬件上而不是在底层操作系统上运行的虚拟机。适用于嵌入式设备,如操作系统where Squawk

Squawk根据GPLv2获得许可。

您需要什么

也许Sanos可以在硬件和JVM之间为您提供一小块代码,供您使用


还有一个,它是Xen虚拟机监控程序上托管的JVM。虽然主页上的细节似乎不多,但也有一些关于这个项目的信息。

只是我看到和听到的一个小片段

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

大约在2002年,我听说有人在FPGA或ASIC芯片上开发JVM

MIT/Lisp的故事是真的,我在他们的博物馆里看到过,有人知道芯片上的JVM是否有任何真相吗

谢谢, Martin。

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

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

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


(值得一提的是,我们使用了最新版本的OpenJDK类库:上次统计时为1.6u24。)

我对java非常陌生,而且我对电子技术有一定的了解

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

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


因此,在本例中,JVM将不是一个操作系统,而是一个直接理解java字节码的系统

甲骨文似乎再次朝着这个方向努力

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


    • 乔,一切都是Java,可以在没有操作系统的情况下运行Java。它完全是Java和at

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

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


      你打算为什么样的系统编写应用程序?哈哈,问得好。我喜欢听这样的项目。作为一个小插曲,我记得读到过一个开源项目,它让CPython(标准python实现)在裸机上运行,并正在用python构建一个操作系统:)很遗憾,我从那以后就失去了链接。还记得吗?一些ARM CPU已经——虽然我不知道它是否是一个全功能的JVM(我的直觉说可能不是),但Jazelle不是一个全功能的JVM,它只是支持CPU执行一些字节码指令,从而更容易编写高性能的JVM。这确实是一个非常有趣和有前途的项目。您应该编辑您的答案,并添加对maxine的引用:Sanos支持jdk1.6和/或64位吗?据我所知不支持。最新的是1.4。它是开源的,所以如果你需要的话,可以随意加入。那么SANOS会因为没有引起足够的社区兴趣而死亡吗?不知道。问项目开发人员:)关于JNODE与SANOS的比较有什么想法吗?请注意Squawk已经死了,并且不是特别新了(我认为它仍然是1.3),所以我不推荐它用于任何新的开发。