2016-09-21 128 views
0

我在Linux上有这个文件。对我来说,它看起来像核心转储和堆转储不同。对?Linux核心转储vs堆转储?

8dbe79c2f000-8dbe79c34000 r--s 005f8000 fd:01 30800604     /path../charsets.jar 
8dbe79c34000-8dbe79c35000 r--s 00007000 fd:01 30800604     /path../sunec.jar 
8dbe79c35000-8dbe79c3a000 rw-p 00063000 fd:01 30800604     /path../jsse.jar 

...............

如果它的核心转储这是什么代表什么呢?我明白8dbe79c2f000-8dbe79c34000应该是内存空间。但是这些信息代表什么?

  1. /path../charsets.jar
  2. FD:01
+1

从哪里来的?你看,如果它是由失败的JVM产生的,它可能仍然是一个java堆转储。 – GhostCat

+0

它已从生产环境提供为内存转储文件。所以我不确定它实际上是什么。但是不管怎样,它不包含对象细节,比如说什么时间点内存在的对象,它们的大小,以及预期作为堆转储的对象的数量?所以它看起来不像堆转储给我。 – user3198603

回答

0

你试过file命令。在man 1 file 更多细节它显示了类似下面对系统的核心转储

➜ ~ file core.28983 
core.28983: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from './a.out' 
➜ ~ 

jar文件通常不是核心文件,它们是Java归档。 file命令在罐子上的输出看起来像在我的系统上下面

file /usr/share/texmf/scripts/ppower4/pp4p.jar 
/usr/share/texmf/scripts/ppower4/pp4p.jar: Zip archive data, at least v1.0 to extract 
+0

我没有得到文件命令将如何帮助这里? – user3198603

+0

ELF 64位LSB **核心文件** x86-64 – dlmeetei

+0

请您详细说明这一点,我没有得到? – user3198603