JVM简介
原创大约 1 分钟
JVM简介
Java虚拟机(JVM)是Java程序运行行的关键组件,他负责将Java源代码转换为可执行的机器码。主要由:类加载器、运行时数据区、执行引擎、本地库接口组成。
类加载器(ClassLoad)
类加载器主要负责将Java字节码文件加载到内存中,以便程序运行时使用。
运行时数据区(Runtime Data Area)
运行时数据区是JVM内存的一部分,用于存储程序运行时的数据。它包括以下几个区域:
- 程序计数器(Program Counter Register): 记录当前线程执行的字节码行号,用于指示下一条需要执行的指令。
- Java虚拟机栈(Java Virtual Machine Stacks): 描述Java方法执行的内存模型,包括局部变量表、操作数栈、动态链接等信息。
- 本地方法栈(Native Method Stack): 为虚拟机调用Native方法服务。
- Java堆(Java Heap): 存放对象实例,是Java虚拟机中内存最大的一块,被所有线程共享。
- 方法区(Method Area): 存储已被虚拟机加载的类信息、常量、静态变量、即时编译后的代码等数据。
执行引擎(Execution Engine)
执行引擎将字节码翻译成底层系统指令,再交由CPU执行
本地库接口(Native Interface)
本地库接口用于扩展Java平台的功能,融合不同编程语言的功能为Java使用。通过本地库接口,Java程序可以调用本地代码库中的功能,实现对特定平台资源的访问和操作。