java虚拟机的工作原理(vmware虚拟机原理)

  计算机系统通常由CPU, 内存,存储,网卡等硬件等构成,计算机是建立在这些硬件之上的,有了这些硬件才能构成一台完整的计算机。

image.png

  虚拟机(Virtual Maching)就是虚拟出来的计系统,或者可以说是模拟出来的计算机系统。虚拟机依赖虚拟机管理程序(或者叫做虚拟机控制程序),虚拟机管理程序负责将宿主计算机的资源(内存,CPU,网络等等)映射到虚拟机的虚拟资源(内存,CPU,网络等等)。

  通过上面的对比可以知道,计算机是有实实在在的硬件系统的,但是虚拟机是没有的,虚拟机的硬件系统都是将宿主机(安装虚拟机的计算机)的硬件系统虚拟出来的。这里可能比较抽象,我们可以举一个例子,计算机进行计算,直接使用自己的CPU来计算就行;但是虚拟机进行计算的话,虚拟机是没有自己的实际硬件CPU的,因此虚拟机的计算只有发到其宿主计算机的CPU上来计算。

  JVM运行原理

  1.加载字节码:类加载器将字节码文件加载到JVM内存中。

  2.初始化类:对类的静态字段进行初始化,并执行静态代码块。

  3.调用主方法:创建一个线程,调用程序的主方法(main方法)。

  4.执行字节码:执行引擎解释执行字节码,可能涉及到对象创建、方法调用等操作

  5.垃圾回收:垃圾回收器定期回收不再使用的对象,释放内存空间。

  6.即时编译:即时编译器将热点代码编译成本地机器码,提高执行效率。

  7.本地方法调用:如果程序需要调用本地方法,JVM会通过JNI(Java Native Interface)调用相应的C/C++函数。


发表评论

评论列表

还没有评论,快来说点什么吧~