JVM体系结构

一、运行原理

JVM体系结构

JVM体系结构

JVM体系结构

 

二、JVM体系结构

JVM体系结构

装载(Class Loader)子系统

堆装载 .class 文件的内容到 Runtime data area 中的method area(方法区域)

执行引擎(Execution Engine)子系统

执行引擎也叫做解释器(Interpreter),负责解释命令,提交操作系统执行。

本地接口(Native Interface)组件

本地接口的作用是融合不同的编程语言为Java 所用,它的初衷是融合C/C++程序,Java诞生的时候是C/C++横行的时候,要想立足,必须有一个聪明的、睿智的调用C/C++程序,于是就在内存中专门开辟了一块区域处理标记为native 的代码,它的具体做法是Native Method Stack 中登记native 方法,在Execution Engine 执行时加载native libraries。目前该方法使用的是越来越少了,除非是与硬件有关的应用,比如通过Java 程序驱动打印机,或者Java 系统管理生产设备,在企业级应用中已经比较少见,因为现在的异构领域间的通信很发达,比如可以使用Socket 通信,也可以使用Web Service 等等。

运行数据域(Runtime Data Area组件

运行数据区是整个JVM 的重点。我们所有写的程序都被加载到这里,之后才开始运行,Java 生态系统如此的繁荣,得益于该区域的优良自治

JVM Runtime Data Area
JVM体系结构