博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java虚拟机JVM内部体系结构
阅读量:6639 次
发布时间:2019-06-25

本文共 921 字,大约阅读时间需要 3 分钟。

hot3.png

Java虚拟机JVM内部体系结构

易百教程移动端:请扫描本页面底部(右侧)二维码并关注微信公众号,回复:"教程" 选择相关教程阅读或直接访问:http://m.yiibai.com 。

 

 

JVM(Java虚拟机)是一个抽象机器。 它是一个提供可以执行Java字节码的运行时环境的规范。JVM可用于许多硬件和软件平台(即JVM是平台相关的)。

什么是JVM?

JVM(Java虚拟机)是:

  1. 指定Java虚拟机的工作的规范。 但实现提供程序是独立的选择算法。 其实现是由Sun和其他公司提供。

  2. 它的实现被称为JRE(Java运行时环境)。

  3. 运行时实例只要在命令提示符上编写java命令来运行java类,就会创建JVM的实例。

JVM(Java虚拟机)能做什么?

JVM执行以下操作:

  • 加载代码
  • 验证代码
  • 执行代码
  • 提供运行时环境

JVM提供了以下定义:

  • 内存区
  • 类文件格式
  • 寄存器集合
  • 垃圾收集堆
  • 致命错误报告等

JVM(Java虚拟机)内部体系结构

下面让我们来了解JVM的内部架构。它包含类加载器,内存区域,执行引擎等。

1)类加载器

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

2)类(方法)区域

类(方法)区域存储每个类结构,例如运行时常量池,字段和方法数据,方法的代码。

3)堆

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

4)堆栈

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

5)程序计数器寄存器

PC(程序计数器)寄存器。 它包含当前正在执行的Java虚拟机指令的地址。

6)本地方法堆栈

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

7)执行引擎

执行引擎包含:

  1. 虚拟处理器
  2. 解释器:读取字节码流,然后执行指令。
  3. 即时(JIT)编译器:它用于提高性能,JIT编译的同时有类似字节代码部分的功能,从而减少编译所需的时间。编译器是指从Java虚拟机(JVM)的指令集到特定CPU的指令集的转换器。

 

 

转载于:https://my.oschina.net/lsl1991/blog/1858939

你可能感兴趣的文章
log4js-Node.js中的日志管理模块使用与封装
查看>>
Python学习笔记24:Django搭建简单的博客站点(二)
查看>>
Codeforces Round #256 (Div. 2) C. Painting Fence(分治贪心)
查看>>
hdu - 4920 - Matrix multiplication(缓存优化+开挂)
查看>>
理解数据成员指针、函数成员指针
查看>>
systemctl 配置mysql 开机启动
查看>>
【Oracle】Exadata虚拟机配置(一)
查看>>
线性相关性度量
查看>>
vector容器的实现
查看>>
C#动态调用WCF接口
查看>>
【Hibernate步步为营】--多对多映射具体解释
查看>>
百度地图SDK for Android【Demo兴趣点搜索】
查看>>
动态规划6-最长上升子序列
查看>>
shell 中各种符号的含义
查看>>
Zabbix 3.0 LTS安装配置
查看>>
PHP基础
查看>>
【IPC进程间通讯之三】内存映射文件Mapping File
查看>>
47款超酷超实用的CSS3技巧教程
查看>>
AspNet MVC中各种上下文理解
查看>>
SQL Server 索引的自动维护 <第十三篇>
查看>>