JVM之【Java虚拟机概述】

目录

对JVM的理解

JVM的架构组成

类加载系统

执行引擎

运行时数据区

垃圾收集系统

本地方法库


对JVM的理解

JVM保证了Java程序的执行,同时也是Java语言具有跨平台性的根本原因;Java源代码通过javac等前端编译器生成的字节码计算机并不能识别,但是可以通过JVM中的类加载系统将字节码加载到内存,再通过执行引擎系统将字节码转换为计算机能识别的机器指令,最后由计算机执行

JVM的架构组成

主要由类加载系统、执行引擎、运行时数据区、垃圾收集系统、本地方法库组成

类加载系统

将字节码数据加载进内存,该过程涉及到类加载器、类加载过程、双亲委派机制

执行引擎

将加载进内存中的字节码数据通过解释器和JIT即时编译器转换为计算机能识别的机器指令

运行时数据区

即运行时数据区,包含程序计数器、虚拟机栈、本地方法栈、堆、本地内存

垃圾收集系统

帮助开发者管理内存,是Java语言不用手动管理内存的原因,涉及到垃圾收集算法、垃圾收集器、GC调优

本地方法库

Java语言调用其他语言,主要是通过C语言编写的库函数

相关推荐
贫民窟的勇敢爷们1 天前
SpringBoot整合AOP切面编程实战,实现日志统一记录+接口权限校验
java·spring boot·spring
2301_769340671 天前
如何在 Vuetify 中可靠捕获 Chip 关闭事件(包括键盘触发).txt
jvm·数据库·python
AC赳赳老秦1 天前
供应链专员提效:OpenClaw自动跟踪物流信息、更新库存数据,异常自动提醒
java·大数据·服务器·数据库·人工智能·自动化·openclaw
迈巴赫车主1 天前
Java基础:list、set、map一遍过
java·开发语言
灵犀学长1 天前
基于 Spring ThreadPoolTaskScheduler + CronTrigger 实现的动态定时任务调度系统
java·数据库·spring
woniu_buhui_fei1 天前
JVM编译器
jvm
m0_596749091 天前
JavaScript中手动实现一个new操作符的底层逻辑
jvm·数据库·python
好家伙VCC1 天前
【无标题】
java
小碗羊肉1 天前
【JavaWeb | 第十一篇】文件上传(本地&阿里云OSS)
java·阿里云·servlet
吾疾唯君医1 天前
Java SpringBoot集成积木报表实操记录
java·spring boot·spring·导出excel·积木报表·数据文件下载