当内核死机时,它会生成/proc/vmcore文件。稍后,我们可以使用makedumpfile实用程序使用这个vmcore文件生成coredump。
这个vmcore文件的内容是什么?
它是否包含内核内存区域,如堆栈区域、堆区域、代码区域和常量?
它是否也包含流程特定信息?进程内存区域等?
请分享一些信息/链接,以了解vmcore的内容以及如何优化或减少内核核心转储大小。
Mr。Anderson提供了以下信息。我代表他张贴
当内核死机时,它会生成/proc/vmcore文件。稍后我们可以使用makedumpfile实用程序生成coredumpvmcore文件。
这个vmcore文件的内容是什么?
它是否包含内核内存区域,如堆栈区域、堆区域、代码面积和常数?
/proc/vmcore是一个ELF格式的核心文件,它包含所有物理内存被崩溃的内核使用。
它是否也包含流程特定信息?进程内存区域等
它包含NT_PRSTATUS ELF注释,其中包含进程的信息当系统崩溃时,它正在每个cpu上运行。它还包含特定于kdump的VMCOREINFO注释,其中包含信息关于makedumpfile和崩溃实用程序使用的崩溃内核。
请分享一些信息/链接以了解vmcore的内容以及如何优化或减少内核核心转储大小。
这就是makedumpfile(8)的全部目的。而不是必须利用一个相当于崩溃内核内存大小的巨大dumpfile,它允许您需要(1)压缩/proc/vmcore内容,以及(2)过滤掉崩溃分析通常不需要的页面,例如用户空间页面、空闲页面、零填充页面和页面缓存页面。
Dave