没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
JVM 内存区域
JVM 内存区域
JVM 运时内存划分
Question
程序计数
Java虚拟机栈
本地法栈
Java 堆
法区
运时常池
直接内存
HotSpot 虚拟机对象揭秘
对象的创建
对象的内存布局
对象头
对象身数据
类型指针
实数据
对填充
对象的访问和定位
柄
柄
指针
实战篇
内存溢出
Java堆溢出
虚拟机栈和本地法栈溢出
内存泄
内存优化建议
参考
JVM 运时内存划分
Java 虚拟机在执Java程序的过程中会把他所管的内存划分为若个同数据区
域。这些区域都有的途,以及创建和销毁的时间有的区域随着虚拟机的启动
存在,有些区域则依赖户线程的启动和结束建和销毁。
Java 7 Java虚拟机运时划分:
Question
内存划分的途?
各个内存于存储么?
程序计数
Question
么是程序计数?
程序计数作是么?
为么程序计数是线程私有内存?
程序计数 (Program Counter Register) 是块较的内存空间,他可以看作是
当前线程所执的字节码的信号指示。
字节码解释作时是通过这个计数的值选取下条需要执的字节码指令,分
、循环、异常处、线程恢复等基础功能都需要依赖这个计数完成。
由于Java虚拟机的多线程是通过线程轮流切换并分配处执时间的式来实现
的,在任何个确定的时刻,个处都会执条线程中的指令。因此,为
线程切换后能恢复到正确的执位置,每条线程都需要个独的程序计数,各
个线程之间计数互影响,独存储。
如果线程正在执的是个Java法,这个计数记录的是正在执的虚拟机字节
码执地址。如果正在执的是个native法,这个计数值为空
(Undefined)。
Java虚拟机栈
Java虚拟机栈(Java Virtual Machine Stacks)线程私有,命周期与线程相同。
虚拟机栈描述的是Java法执的内存模型,诶个法在执的同时都会创建个
栈帧(Stack Frame)于存储局部变表,操作数栈,动态链接,法出等信
息。每个法从调直执完成的过程,就对应着个栈帧在虚拟机栈中栈
出栈的过程。
本地法栈
本地法栈(Native Method Stack )与虚拟机栈作常相似,区别过是虚拟
机栈为虚拟机执Java法服务,本地法栈则为虚拟机使到的native法服
务。
虚拟机规范对本地法栈中法使的语,使式与数据结果没有强制规定。
Java 堆
Question
Java堆么时候创建的?
Java堆于存储么?
Java堆 (Java Heap)是Java虚拟机所管的内存中最的块。Java堆是被所有
线程共享的块内存区域,在虚拟机启动时创建。此内存区域的唯的就是存放
对象实,乎所有的对象实都在这分配内存。
The heap is the runtime data area from thich memory for all class interface
and arrays is allocated
但是随着JIT编译的发展与逃逸分析技术逐渐成熟,栈上分配,标替换优化技术
将会导致些微妙的变化发,所有的对象都分配在对堆上也渐渐变得是那么“绝
对”。
注:
1. JIT编译技术请参考《深JVM系-JIT编译详解》
2. 逃逸分析、同步省、栈上分配、标替换请参考《深JVM系-逃逸分析、
同步省、栈上分配、标替换》
Java 堆是垃圾收集管的主要区域,因此很多时候也被称为 “GC堆”。从内存回
收的度来看,由于现在收集基于 分代收集算法,所以 Java 堆中还可以细分为:
新代和代。 再细致点的有 Eden 空间 、From Survivor 空间、To Survivor
空间等 从内存分配的度来看,线程共享的 Java 堆中可能分出多个线程私有的分
配缓冲区 (Thread Local Allocation Buffer TLAB)。
过论如何划分,都与存储内容关,论那个区域,存储的都仍然是对象实
,进步划分的的是为好的回收内存,或者快的分配内存。
根据Java虚拟机规范的规定,Java 堆可以处于物上连续的内存空间中,只要逻
辑上是连续的即可。当前主流的虚拟机都是按照可展来实现的通过 虚拟机参数 (-
Xmx 和 -Xms) 控制。如果堆中的内存没有完成实分配,且堆也法在展
时,会抛出 OutOfMemoryError 错误。
法区
Question
法区属于永久代吗?
剩余18页未读,继续阅读
艾闻
- 粉丝: 31
- 资源: 302
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0