Linux中的核心转储文件是什么?它提供什么信息?

linux中的核心转储文件是什么?它提供了什么信息?

解决方法

它基本上是使用中的进程地址空间(从包含所有虚拟内存区域的mm_struct结构)以及其崩溃时的任何其他支持信息* a.

例如,假设您尝试取消引用NULL指针并接收SEGV信号,导致退出.作为该过程的一部分,操作系统尝试将您的信息写入文件以进行以后的验证分析.

您可以将核心文件与可执行文件一起加载到调试器中(例如,用于符号和其他调试信息),并尝试查找导致问题的原因.

* a:在内核版本2.6.38中,fs/exec.c/do_coredump()是负责核心转储的一个,您可以看到它通过了信号号码,退出代码和寄存器.它反过来将信号编号和寄存器传递给二进制格式(ELF,a.out等)转储器.

ELF转储器为fs/binfmt_elf.c/elf_core_dump(),您可以看到它在fs/binfmt_elf.c/fill_note_info()输出非基于内存的信息,如线程详细信息,然后返回输出进程空间.

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...