Javadump(更常见的名字:javacore) -- 3

主题

Javadump(更常见的名字:javacore) – 3

本机内存 (NATIVEMEMINFO)

Java 转储的 NATIVEMEMINFO 部分提供了有关 Java™ 运行时环境所分配的本机内存的信息。

本机内存是使用库函数(如 malloc() 和 mmap())从操作系统请求的内存。

在运行时环境分配本机内存时,内存与高级内存类别相关联。每个内存类别都有两个运行计数器:

  • 已分配但尚未释放的总字节数。
  • 尚未释放的本机内存分配数。

每个内存类别都有子类别。

NATIVEMEMINFO 部分按 Java 运行时环境组件提供内存分类细分情况。每个内存类别都包含该类别和所有相关子类别中每个计数器的总值。

运行时环境仅跟踪由 Java 运行时环境和类库分配的本机内存。运行时环境不记录由应用程序或第三方 JNI 代码分配的内存。
NATIVEMEMINFO 部分中报告的本机内存总量始终略低于通过操作系统工具报告的总本机地址空间使用量,具体原因如下:

  • 执行 Java 转储时,内存计数器数据可能未处于一致状态。
  • 该数据不包括由操作系统引起的任何开销。

Start of changes for service refresh 3可以在 NATIVEMEMINFO 输出的 VM Class libraries 部分找到 Direct Byte Buffers 内存类别。End of changes for service refresh

Start of changes for service refresh 3

0SECTION       NATIVEMEMINFO subcomponent dump routine
NULL =================================
0MEMUSER
1MEMUSER JRE: 591,281,600 bytes / 2763 allocations
1MEMUSER |
2MEMUSER +--VM: 575,829,048 bytes / 2143 allocations
2MEMUSER | |
3MEMUSER | +--Classes: 14,357,408 bytes / 476 allocations
2MEMUSER | |
3MEMUSER | +--Memory Manager (GC): 548,712,024 bytes / 435 allocations
3MEMUSER | | |
4MEMUSER | | +--Java Heap: 536,870,912 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Other: 11,841,112 bytes / 434 allocations
2MEMUSER | |
3MEMUSER | +--Threads: 11,347,376 bytes / 307 allocations
3MEMUSER | | |
4MEMUSER | | +--Java Stack: 378,832 bytes / 28 allocations
3MEMUSER | | |
4MEMUSER | | +--Native Stack: 10,649,600 bytes / 30 allocations
3MEMUSER | | |
4MEMUSER | | +--Other: 318,944 bytes / 249 allocations
2MEMUSER | |
3MEMUSER | +--Trace: 324,464 bytes / 294 allocations
2MEMUSER | |
3MEMUSER | +--JVMTI: 17,784 bytes / 13 allocations
2MEMUSER | |
3MEMUSER | +--JNI: 129,760 bytes / 250 allocations
2MEMUSER | |
3MEMUSER | +--Port Library: 10,240 bytes / 62 allocations
2MEMUSER | |
3MEMUSER | +--Other: 929,992 bytes / 306 allocations
1MEMUSER |
2MEMUSER +--JIT: 14,278,744 bytes / 287 allocations
2MEMUSER | |
3MEMUSER | +--JIT Code Cache: 8,388,608 bytes / 4 allocations
2MEMUSER | |
3MEMUSER | +--JIT Data Cache: 2,097,216 bytes / 1 allocation
2MEMUSER | |
3MEMUSER | +--Other: 3,792,920 bytes / 282 allocations
1MEMUSER |
2MEMUSER +--Class Libraries: 1,173,808 bytes / 333 allocations
2MEMUSER | |
3MEMUSER | +--Harmony Class Libraries: 2,000 bytes / 1 allocation
2MEMUSER | |
3MEMUSER | +--VM Class Libraries: 1,171,808 bytes / 332 allocations
3MEMUSER | | |
4MEMUSER | | +--sun.misc.Unsafe: 6,768 bytes / 5 allocations
4MEMUSER | | | |
5MEMUSER | | | +--Direct Byte Buffers: 6,120 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--Other: 648 bytes / 4 allocations
3MEMUSER | | |
4MEMUSER | | +--Other: 1,165,040 bytes / 327 allocations
NULL
NULL ------------------------------------------------------------------------

End of changes for service refresh

Start of changes for service refresh 1您可以获得有关类库本机代码内存分配的其他诊断信息。以下输出显示了在设置系统属性 -Dcom.ibm.dbgmalloc=true之后,记录在 Class Libraries 部分中的额外信息:

3MEMUSER       |  +--Standard Class Libraries: 17,816 bytes / 17 allocations
3MEMUSER | | |
4MEMUSER | | +--IO, Math and Language: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Zip: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Wrappers: 3,144 bytes / 3 allocations
4MEMUSER | | | |
5MEMUSER | | | +--Malloc: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--z/OS EBCDIC Conversion: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--Other: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Networking: 4,192 bytes / 4 allocations
4MEMUSER | | | |
5MEMUSER | | | +--NET: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--NIO and NIO.2: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--RMI: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--Other: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--GUI: 5,240 bytes / 5 allocations
4MEMUSER | | | |
5MEMUSER | | | +--AWT: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--MAWT: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--JAWT: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--Medialib Image: 1,048 bytes / 1 allocation
4MEMUSER | | | |
5MEMUSER | | | +--Other: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Font: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Sound: 1,048 bytes / 1 allocation
3MEMUSER | | |
4MEMUSER | | +--Other: 1,048 bytes / 1 allocation

有关使用 -Dcom.ibm.dbgmalloc=true系统属性命令行选项End of changes for service refresh