JVM内存模型
2021-05-26 10:21:31 10 举报
jvm 内存模型
作者其他创作
大纲/内容
方法区
线程私有(每个线程有单独的一块内存)
虚拟机栈(-Xss调整,64位系统默认1M,32位系统默认320k)
CMS堆
完成出口
栈帧2
JVM内存结构
3
0
1
操作数栈
类似cpu的缓存,将局部变量表中的数据加载到这,通过指令由执行引擎拿操作数栈的顶部几个值进行计算
线程共享区域
堆
老年代
动态链接
私有线程 程序计数器 虚拟机栈(本地方法栈和虚拟机栈合并了) 栈帧 局部变量表 操作数栈 动态链接 完成出口
堆外内存或直接内存
Eden
本地方法栈:JVM规范(HotSpot把本地方法栈和虚拟机栈合二为一,如果是本地方法栈,程序计数器为Undefined)
运行时常量池
G1堆
执行引擎
局部变量表,是32位,主要存储java8大基础类型,如果是64位,则使用高低位占用两个,如果是Object,则直接存储内存地址
局部变量表-32位
Survivor From
栈帧1
Survivor To
main栈帧
程序计数器(记录字节码执行的地址或行号)
2
0 条评论
下一页