JVM基本知识——运行空间

JVM(**Java Virtual Machine)**即Java虚拟机,是负责读取java字节码,并在实际的硬件环境中运行。

JVM可以分为三部分:类装载器(ClassLoader)子系统、内存空间、执行引擎

内存空间(运行时数据区)

方法区和堆是线程共享的

本地方法栈:保存执行方法信息,执行java方法是使用栈,native方法使用本地方法栈

方法区:存储被虚拟机加载的类信息、常量、静态变量。1.7的永久代和1.8的元空间都是方法区的实现

虚拟机栈:存储局部变量表,线程私有,线程每执行一个方法就会在栈中创建一个栈阵,调用方法执行入栈、方法返回执行出栈

堆:堆是内存最大的一部分,存储着所有对象的实例,为对象分配内存。是垃圾回收的主要区域。堆在物理存储上是不连续的,但是在逻辑上是连续的

程序计数器:记录方法执行的jvm指令地址(native方法则为空,因为用c,不需要编译),

相关推荐
行者-全栈开发19 小时前
美团后端开发面试题全集(2026最新版):HashMap、JVM、MySQL、Redis高频考点深度解析
jvm·hashmap·java面试题·后端开发·redis缓存·mysql索引·面经汇总
豆沙沙包?21 小时前
C++-程序的内存模型(P84-P88)
java·jvm·c++
未秃头的程序猿1 天前
凌晨3点被叫醒:线上OOM,我用这套流程40分钟定位根因
java·jvm·后端
执笔画流年呀1 天前
JVM虚拟机
jvm
lisin-lee-cooper1 天前
JVM知识体系
java·jvm
zzz_23682 天前
TencentDB-Agent-Memory 深度解析:让多个 Agent 共享项目经验的记忆中枢
java·开发语言·jvm·人工智能·agent·memory·tencent db
阿宇的技术日志2 天前
堆溢出解决思路
jvm
番茄炒鸡蛋加糖2 天前
JVM基础1:内存区域、GC垃圾回收算法
大数据·jvm·算法
bbq粉刷匠2 天前
ArrayList 整体认识
java·jvm·数据结构
math_hongfan2 天前
鸿蒙存储碎片高级清理机制:数据库Vacuum/文件碎片整理/缓存过期清理/主动空间回收策略
jvm·数据库·学习·缓存·华为·harmonyos·鸿蒙