hs_err_pid文件中指定的堆的不同部分是什么?

时间:2009-08-17 06:32:46

标签: java gcc jvm

以下是hs_err_pid

的一部分
Heap
 PSYoungGen      total 13888K, used 9807K [0x8a330000, 0x8b140000, 0x914f0000)
  eden space 13504K, 69% used [0x8a330000,0x8ac67710,0x8b060000)
  from space 384K, 96% used [0x8b0e0000,0x8b13c6e0,0x8b140000)
  to   space 448K, 0% used [0x8b060000,0x8b060000,0x8b0d0000)
 PSOldGen        total 115456K, used 57684K [0x514f0000, 0x585b0000, 0x8a330000)
  object space 115456K, 49% used [0x514f0000,0x54d451c0,0x585b0000)
 PSPermGen       total 16384K, used 11253K [0x4d4f0000, 0x4e4f0000, 0x514f0000)
  object space 16384K, 68% used [0x4d4f0000,0x4dfed618,0x4e4f0000)

什么是

  1. PSYoungGen
  2. 伊甸园空间(从太空到太空)
  3. PSOldGen
  4. PSPermGen(对象空间)

3 个答案:

答案 0 :(得分:4)

这些是垃圾收集器使用的内存区域。

有关详细信息,请参阅memory management whitepaper from Sun(PDF)。

答案 1 :(得分:3)

堆内存分为不同的

Default Arrangement of Generations, Except for Parallel Collector and G1

<强> 1。年轻一代:大多数所有新对象最初都是在Young Generation中创建的。这一代分为两个领域,即伊甸园空间幸存者空间。幸存者空间进一步分为两个区域 Survivor0 Survivor1 。所有新对象最初都是在Eden Space中创建的,幸存者空间主要用于进行轻微的垃圾收集。

在每个次要集合之前,一个幸存者空间将为空(to),这将用于保留来自eden空间或from幸存者的实时对象小集合的空间。

Young Generation Minor Collection 1

对于下一次小集合,反之亦然,即前fromtotoform

Young Generation Minor Collection 2

<强> 2。终身或老一代:年轻一代中lives一段时间内的物体(即幸存下来的一些小集合)被移到老一代。

第3。永久生成:该区域主要包含类和方法元数据。 Read more here

    Heap
 PSYoungGen      total 13888K, used 9807K [0x8a330000, 0x8b140000, 0x914f0000)
  eden space 13504K, 69% used [0x8a330000,0x8ac67710,0x8b060000)
  from space 384K, 96% used [0x8b0e0000,0x8b13c6e0,0x8b140000)
  to   space 448K, 0% used [0x8b060000,0x8b060000,0x8b0d0000)
 PSOldGen        total 115456K, used 57684K [0x514f0000, 0x585b0000, 0x8a330000)
  object space 115456K, 49% used [0x514f0000,0x54d451c0,0x585b0000)
 PSPermGen       total 16384K, used 11253K [0x4d4f0000, 0x4e4f0000, 0x514f0000)
  object space 16384K, 68% used [0x4d4f0000,0x4dfed618,0x4e4f0000)

以上显示了Heap中不同世代的内存使用情况摘要。

read this Sun white paper清楚了解。

答案 2 :(得分:2)

这是您的Java HotSpot Garbage Collection信息来源。

  

HotSpot Generations

     

Java中的内存   HotSpot虚拟机是有组织的   分为三代:一个年轻人   一代人,一代人,一代人   永久的一代。大多数对象都是   最初分配给年轻人   代。老一辈   包含幸存的对象   一些年轻一代   收藏品,以及一些大型   可以直接分配的对象   在老一辈。永久的   生成保存JVM的对象   发现垃圾很方便   收集器管理,例如对象   描述类和方法,如   以及类和方法   自己。