xzhuz / blog-gitment

博客备份和comment记录
https://meisen.pro
0 stars 0 forks source link

JVM内存 #20

Open xzhuz opened 6 years ago

xzhuz commented 6 years ago

JVM内存

jvm-runtime-data-area

  1. 运行时数据区每个独立线程都包含PC计数器(Program counter register)、虚拟机栈(JVM Stack)、本地方法栈(Native Method Stack)
    • 程序计数器: 是一块较小的内存空间,它的作用可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。随着线程的启动而创建。
    • JVM Stack: 是JVM的内存指令区。每个方法在执行的时候,都会创建一个栈帧(Stack Frame), 每个栈帧包含了局部变量表、操作数栈、动态链接、方法出口等信息。每个方法从调用到执行完成这个过程,就对应这一个栈帧在虚拟机栈中的入栈到出栈的过程。

jvm-stack

https://www.programcreek.com/2013/04/jvm-run-time-data-areas/