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:我的認爲是使用的是複製清除算法

相關文章
相關標籤/搜索