是否有为在没有操作系统的情况下引导Java虚拟机而编写的引导加载程序?据我所知,Java虚拟机可以在没有操作系统帮助的情况下独自在机器上运行。
Java定义guest语言,而不是host/JVM。
您需要编写一个JVM,以便在您想要运行它的任何机器的裸机上运行。(即,作为操作系统内核和JVM,处理中断等等(。因此,没有一种通用的东西叫做";Java";引导加载程序可以加载的。
像OpenJDK/HotSpot这样的主流JVM并不是为了作为内核运行而编写的,只是为了在一些现有的主流操作系统下运行。但正如您所发现的,有一些问题:您能在没有操作系统的计算机上运行JVM吗?
即使对于特定的平台,内核需要引导加载程序来做的事情也可能取决于内核。有一些标准,比如x86的multiboot,定义了一种内核文件格式,像GRUB这样的引导程序知道如何识别和加载,但除此之外,您可能会期望一个裸机JVM自带自己的自定义引导程序,特别是如果它用于x86 PC以外的平台;EFI应用程序";。