JVM系列一:JVM内存模型

今天起开始总结JVM。本身也看了好多JVM相关的知识,在此作个总结。java

打算分为五个部分来说:JVM内存模型、JVM类加载机制、JVM垃圾回收机制、JVM启动参数设置及优化、JVM其余相关。优化

今天首先来看JVM内存模型。spa

————————————————————————————————————————————————————————————线程

JVM是java虚拟机,它将字节码(.class文件)加载到内存里解释执行。对象

JVM运行时所需的数据放在运行时数据区,分为5个部分:blog

 

1.堆:存储JVM运行过程当中生成的对象内存

2.方法区:存储类的结构信息,静态变量信息,包含常量池(常量池存储常量,字符串)字符串

3.程序计数器:始终指向JVM执行的下一条指令地址虚拟机

4.栈:JVM是基于栈执行的虚拟机,每启动一个线程,都会分配一块栈空间,JVM的执行就是将栈帧入栈和出栈的操做class

5.本地方法栈:执行非java方法,本地方法的栈空间

其中,堆和方法区是全部线程共享的;程序计数器、栈和本地方法栈是每一个线程所私有的。

相关文章
相关标签/搜索