JVM内存管理&GC

一.JVM内存划分java

|--------------------|-------------PC寄存器-------|算法

|----方法区 ---------|--------------java 虚拟机栈--|          数组

|----堆区----------- |-------------本地方法栈------|线程

|----共享区域------- |--------------线程独有-------|对象

其中左边为共享内存空间,右边为线程独有的线程级别的内存内存

各个区存储什么?虚拟机

1.方法区:类的描述,常量等变量

2.堆:java对象,数组方法

3.pc寄存器:保存当前线程的执行地址new

4.本地方法栈:方法等的局部变量

5.本地方法栈:系统本地方法

2、GC

1.知识准备:标记清除算法和复制清除算法

2.堆区划分

 {(年轻代:Eden区,s0,s1),(老年代:old),(持久代:perm)}

年轻代使用复制清除算法(serial ,parnew ,parallel)

年老代(CMS,serial old,parallel old)

 

为嘛分s0和s1:我的认为是使用的是复制清除算法

相关文章
相关标签/搜索