gpt4 book ai didi

java - Java 虚拟机真的是和我的 VMWare 或 Parallels 文件一样的虚拟机吗?

转载 作者:IT老高 更新时间:2023-10-28 20:33:04 24 4
gpt4 key购买 nike

Java 虚拟机真的是与我的 VMWare 或 Parallels 文件相同意义上的虚拟机吗?

最佳答案

没有。

VMWare 和其余的实际上虚拟化了机器的硬件。在 VMWare 容器(或 Parallels 或 Windows 的虚拟化容器或 Bochs 或 ...)内运行的操作系统对在虚拟化容器内运行具有不同程度的感知。在 VMWare 中,操作系统不知道它是在虚拟容器中运行的。操作系统根本没有修改,尽管通常会安装专门的驱动程序(最重要的是视频)以防止性能问题。其他一些虚拟机不进行完整的硬件虚拟化,而是要求容器内的操作系统对容器进行特殊调用,以代替常规的硬件调用。

从这个意义上说,JVM 根本不是虚拟机。除处理器外,没有任何硬件被虚拟化。 JVM 本质上是一个虚拟化 CPU,加上 C++ 或任何其他面向对象语言所包含的相同类型的运行时,以及垃圾收集和其他必需品。此外,当然,Java 类文件(和 JAR 文件等)不是机器码,而是中间字节码。因此 JVM 必须在运行时编译或解释类文件(无论是否包含在 JAR 文件中),并具有在运行时动态加载和查找新代码的能力。

JVM被称为虚拟机,因为JVM定义定义了一个抽象机。这包括寄存器、堆栈等,Java 源代码编译成的字节码实际上是该虚拟机的机器码。然后 JVM 将这个字节码解释或编译成本地机器指令。

本质区别在于JVM是虚拟化的处理器,其他虚拟机是虚拟化的机器(包括显卡、网络等外部设备和硬件寄存器) )。

关于java - Java 虚拟机真的是和我的 VMWare 或 Parallels 文件一样的虚拟机吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/861422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com