JVM详解(一)--JVM和Java体系结构

目录

一、JVM的整体结构

二、JVM的架构模型

三、JVM的生命周期

[1. 虚拟机的启动](#1. 虚拟机的启动)

[2. 虚拟机的执行](#2. 虚拟机的执行)

[3. 虚拟机的退出](#3. 虚拟机的退出)

四、JVM的发展历程

[1. Sun Classic VM](#1. Sun Classic VM)

[2. Exact VM](#2. Exact VM)

[3. HotSpot VM](#3. HotSpot VM)

[4. JRockit](#4. JRockit)


一、JVM的整体结构

JVM的整体结构如下图所示:

JVM的输入是字节码文件,类加载器子系统负责将字节码文件转化为一个大的Class对象。执行引擎负责将字节码指令转换为机器指令,用于操作系统进行识别。

二、JVM的架构模型

三、JVM的生命周期

1. 虚拟机的启动

2. 虚拟机的执行

3. 虚拟机的退出

四、JVM的发展历程

1. Sun Classic VM

解释器是逐行解释字节码,运行效率比较低。JIT编译器是一种即时编译器,会将代码即时的编译为本地机器指令 ,然后将本地机器指令进行缓存,执行的时候就不需要像解释器一样逐行再去翻译,提升程序执行效率。

注:JIT解释器一般只将热点代码进行即时编译进行缓存。如果将全部代码进行缓存的话,当程序开始执行的时候,会有很长一段时间的空窗期,这段时间是JIT编译器将代码编译为本地机器指令的时间。所以现在都将JIT和解释器结合进行使用。

2. Exact VM

3. HotSpot VM

4. JRockit

还有许多其他的虚拟机,此处不做过多的介绍。

相关推荐
Derek_Smart1 天前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
大道至简Edward2 天前
深入 JVM 核心:一文读懂 Class 文件结构(附 Hex 实战解析)
jvm
weisian1515 天前
JVM--20-面试题6:如何判断对象可以被垃圾回收?
jvm·可达性算法
蚊子码农5 天前
每日一题--JVM线程分析与死锁排查
jvm
xuxie995 天前
NEXT 1 进程2
java·开发语言·jvm
weisian1515 天前
JVM--19-面试题5:说说JVM的类加载机制和双亲委派模型
jvm·双亲委派模型·jvm类加载机制
亓才孓6 天前
【反射机制】
java·javascript·jvm
Volunteer Technology6 天前
JVM之性能优化
jvm·python·性能优化
Andy Dennis6 天前
Java语法注意事项
java·开发语言·jvm
坚持的小马6 天前
JVM相关笔记-jps
jvm·笔记