JVM的内存区域是怎么划分的?

JVM的内存区域指的是JVM的运行时数据区

主要分为方法区虚拟机栈本地方法栈程序计数器五个主要区域。

1.方法区(Method Area)

线程共享区域,存着类的结构信息、常量、静态变量。

2.堆(Heap)

最大的共享区,专门放对象和数组。

3.虚拟机栈(JVM Stack)

线程私有,存着局部变量、操作数栈、动态链接、方法出口信息、基本类型变量、对象引用。

4.本地方法栈(Native Method Stack)

线程私有,用来分配内存给非Java方法。

类似于虚拟机栈,专为JNI调用本地代码服务。

5.程序计数器(Program Counter Register)

每个线程都有一个独立的程序计数器,线程私有。

保存当前线程执行的Java 方法字节码指令的地方或者行号。

相关推荐
liann1191 小时前
Agent 内存马禁止 Attach JVM
java·jvm·安全·网络安全·系统安全·网络攻击模型·信息与通信
代码漫谈1 小时前
JVM 参数调优:Spring Boot与JDK新特性的最佳结合
java·jvm·spring boot
2401_898717661 小时前
HTML5中SVG原生动画标签Animate的基础用法
jvm·数据库·python
2401_867623981 小时前
mysql如何导出特定条件的查询数据_使用mysqldump加where参数
jvm·数据库·python
likerhood2 小时前
认识 JVM:Java 程序背后的那台“隐形计算机”
java·开发语言·jvm
YOU OU2 小时前
JVM基础知识
开发语言·jvm
冷小鱼2 小时前
JVM 深度调优实战:从 JDK 8 到 JDK 21 的演进与中间件落地
java·jvm·中间件
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题 第41题】【JVM篇】第1题:JVM由哪些部分组成?
java·开发语言·jvm·后端·面试
dfdfadffa11 小时前
如何用模块化方案组织一个可扩展的前端组件库项目
jvm·数据库·python
2301_8125396711 小时前
SQL中如何高效实现分组数据的批量更新_利用窗口函数与JOIN
jvm·数据库·python