jvm虚拟机内存管理的简单介绍

jvm内存分为虚拟机栈,堆,方法区,程序计数器,本地方法栈

 jvm分为五大模块,类装载器子系统,运行时数据区,执行引擎,本地方法接口,垃圾收集模块

JVM运行时内存

 

JDK7的内存结构

 

 

JDK8的内存结构

 

 JDk7和JDK8变化对比

 

 线程私有的

1.程序计数器

2.虚拟机栈

3.本地方法栈

线程共享的

1.堆

2.方法区

3.直接内存

方法区在JDk8之后的变化

移除了永久代,引入了元空间
永久代中的类元信息转移到了本地内存
永久代中字符串常量池和类静态变量转移到了java堆
永久代参数变成了与元空间参数

  永久代会出现性能问题和内存溢出,回收效率偏低

 

posted @ 2022-09-28 22:52  不忘初心2021  阅读(34)  评论(0编辑  收藏  举报