Java操作系统问题

Java操作系统问题,java,assembly,operating-system,jvm,Java,Assembly,Operating System,Jvm,好吧,我一直在研究汇编语言。 我已经知道如何用java编程了。 我在网上读到,如果你能提供足够的资源,用Java编写操作系统是可能的 支持Java虚拟机的汇编代码。 有人知道Java虚拟机需要内核/程序集bin文件做什么吗? 您如何从汇编代码调用JVM/如何使用预定义的类启动JVM?您的意思可能是这样的?这是一个用Java编写的完整的操作系统。它有一个用汇编语言和C语言编写的小微内核(称为纳米内核)。此代码取决于硬件。他们还编写了Java编译器,将操作系统的Java部分编译为本机代码 我希望它对

好吧,我一直在研究汇编语言。 我已经知道如何用java编程了。 我在网上读到,如果你能提供足够的资源,用Java编写操作系统是可能的 支持Java虚拟机的汇编代码。 有人知道Java虚拟机需要内核/程序集bin文件做什么吗?
您如何从汇编代码调用JVM/如何使用预定义的类启动JVM?

您的意思可能是这样的?这是一个用Java编写的完整的操作系统。它有一个用汇编语言和C语言编写的小微内核(称为纳米内核)。此代码取决于硬件。他们还编写了Java编译器,将操作系统的Java部分编译为本机代码


我希望它对您有所帮助。

您是否假设您已经有了操作系统?如果是这样,就启动JVM所需的操作而言,您只需要进行系统调用来启动JVM应用程序并提供适当的参数

如果你问,“为了让一个操作系统在JVM中运行,我需要编写什么代码?”那么,引用卡尔·萨根的话,“你首先必须发明宇宙。”

JavaVM提供了许多特性和功能,因为它使用底层系统中的相同特性,并将它们抽象到虚拟机中。因此,Windows JVM是基于Windows功能构建的,Linux JVM是基于Linux功能构建的,等等。这意味着,为了在JVM中托管您自己的操作系统,您需要编写引导代码以在硬件上托管JVM,然后用Java编写操作系统代码以在JVM中运行

“有人知道Java虚拟机需要从 内核/程序集bin文件?”


是的,答案是,无论你想让计算机做什么,你都需要为它编写代码。文件系统支持、内存管理、线程化——托管应用程序要求JVM做的所有事情,Java都会反过来要求较低级别——在本例中是您的代码——去做,所以您必须编写它。

如前所述,您也可以签出JNode。您可以提供的最低要求是。但对于Java NIO、网络等高级功能,您可能希望提供与常规操作系统一样多的功能。据我所知,JNode是一个死项目。是的,但gitorius上的最后一次提交是从2011年开始的……想象一下,几乎两年没有一次小小的提交。如果没有死,就靠生命维持。