2016 - 2024

感恩一路有你

java Java虚拟机体系结构由几部分组成?

浏览量:1948 时间:2021-03-28 14:19:12 作者:admin

Java虚拟机体系结构由几部分组成?

类文件通过类加载子系统将信息存储到运行时数据区(包括方法区、堆、Java堆栈、程序计数器和本地方法堆栈),执行引擎通过一定的规范解释执行。本地方法还可以通过执行引擎自己调用运行时数据区域。

Classloader是JVM的一个子系统,用于加载类文件。

它存储每个类结构,例如运行时常量池、字段和方法数据、方法代码等

它是分配对象的运行时数据区域。

它存储局部变量和部分结果,并在方法调用和返回中发挥作用。每个线程都有一个私有JVM堆栈,同时创建一个线程。每次调用方法时,都会创建一个新框架。框架在其方法调用完成时被销毁。

程序计数器,其中包含当前正在执行的Java虚拟机指令的地址。

它包含应用程序中使用的所有本地方法。

执行引擎包括:虚拟处理器、解释器、JIT编译器

Java虚拟机的功能是执行Java字节码,其编码实现是死循环。每个循环都是获取字节码并执行字节码的过程,因此与其他程序没有本质区别。主流的JavaVM大多是用C语言实现的,然后用汇编语言辅助实现,用Java实现JavaVM的情况有一些,但不多。

下面是使用C语言在智能设备中实现虚拟机的一个片段。

此代码是短加法字节码的实现。

这段代码只是获取字节码并执行它。你认为JavaVM就是这样吗。

为了优化虚拟机的效率,很多人选择用汇编的方式重写执行频率高的代码。

小结是C语言实现的许多,将与汇编结合起来作为辅助工具。有其他语言,但不是主流。

java java编程思想 java面向对象程序设计

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。