首页 > 系统相关 >jvm虚拟机内存管理的简单介绍

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

时间:2022-09-28 23:01:04浏览次数:56  
标签:jvm 虚拟机 永久 内存 本地 方法

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

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

JVM运行时内存

 

JDK7的内存结构

 

 

JDK8的内存结构

 

 JDk7和JDK8变化对比

 

 线程私有的

1.程序计数器

2.虚拟机栈

3.本地方法栈

线程共享的

1.堆

2.方法区

3.直接内存

方法区在JDk8之后的变化

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

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

 

标签:jvm,虚拟机,永久,内存,本地,方法
From: https://www.cnblogs.com/q202105271618/p/16727038.html

相关文章

  • Linux开发环境搭建与使用——通过虚拟机安装系统( ubuntu )
    双击VMware-player-4.0.6-1035888.exe,一路next即可。通过VmwarePlayer创建虚拟机第一步第二步第三步第四步第五步第六步第七步此时已新建好虚拟机,再配置下虚拟机就可以在虚......
  • C++内存对齐
    内存对齐:计算机中内存的地址空间是按照 byte 来划分的,从理论上讲对任何类型变量的访问可以从内存中的任意地址开始,但实际情况是:在访问特定类型变量的时候通常在特定的内......
  • Ubuntu虚拟机不能ping提示Temporary failure in name resolution
    Ubuntu虚拟机不能ping提示Temporaryfailureinnameresolution问题原因系统每次重启之后/etc/resolv.conf文件被删除解决办法执行命令sudosystemctlrestartsyste......
  • 异常---异常安全问题--内存泄漏动图演示
    异常是一种处理错误的方式,当一个函数发现自己无法处理的错误时就可以抛出异常,让函数的直接或间接的调用者处理这个错误。throw:当问题出现时,程序会抛出一个异常。这是......
  • 虚拟机挂载到开发板的脚本文件,可以指定挂载目录,能自动设置开发板的ip
    虚拟机挂载到开发板的脚本文件,可以指定挂载目录,能自动设置开发板的ip:echo-e"未占用IP\n">ip#把ip重定向到ip文件里,作为记录src=10.221.0.71:/home/wencong#虚拟机需......
  • C++ 内存模型与顺序一致性
    目录顺序一致性什么是内存模型?什么是顺序一致性?强顺序与弱顺序顺序一致性与内存模型的强弱顺序C++内存顺序(memory_order)memory_order有哪些?如何使用memory_order?顺序一致......
  • docker 与虚拟机 区别
      虚拟机:对硬件虚拟化,不同的llinux内核。 docker:只是将容器与操作系统隔开,各个容器之间隔开  虚拟机的Hypervisor创建了一个非常牢固的边界,以防止应用程序......
  • 虚拟机的Linux系统安装redis
    在虚拟机的Linux系统安装redis时出现make:***[install]错误2百度了一下发现是因为没有安装gcc因为Redis是C实现的,需要gcc来进行编译执行安装gcc依赖和gcc:yum-yins......
  • 【Ubuntu】查看设备的内存信息
    Ubuntu操作系统下,可使用dmidecode的相关命令来查看机器的内存信息。1、查看内存槽的数目,哪个槽位插了内存以及每个内存槽位现在的内存大小sudodmidecode|grep-P-A5"......
  • JVM内存溢出问题排查
    内存溢出outofmemory:通俗理解就是内存不够用了,是我们工作当中经常会遇到的问题,内存溢出有可能发生在正常的情况下,而非代码层面问题导致,比如高并发下,大量的请求占用内......