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

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

相关推荐
此时不提桶,更待何时3 天前
01-06-A-JVM排查实战详解
java·jvm
wuminyu3 天前
HotSpot的轻量锁与膨胀后的ObjectMonitor状态重建原理
java·linux·c语言·jvm·c++
需要8263 天前
JVM 内存区域与对象创建:一次 GC 从哪来
java·jvm·spring boot·spring·servlet·tomcat
凤山老林3 天前
Spring Boot 应用 JVM 性能调优实战:GC 日志分析、堆内存规划与容器环境避坑
jvm·spring boot·gc·堆内存
需要8264 天前
Arthas 一个命令排查线上问题
java·jvm·spring·spring cloud
程序员阿鹏4 天前
简单介绍一下软引用
java·开发语言·jvm·数据结构·后端
lsylalalala5 天前
JVM(Java虚拟机)
jvm
xieliyu.5 天前
JVM 垃圾回收机制详解:从标记过程、回收算法到垃圾收集器
java·jvm·笔记·java-ee
此时不提桶,更待何时6 天前
01-04-B-垃圾回收面试与生产事故实战
java·jvm·面试
kian.wqn6 天前
【JVM核心体系02】JVM 运行时内存区域:堆、栈、元空间、直接内存一次讲清
jvm