我正在寻找手动生成 ELF Core Dump 文件。
我的程序中有一个 RAM 转储,还可以检索寄存器信息等。
有了这些数据,我想构建一个 ELF 核心转储文件,类似于 Linux 内核在程序崩溃时生成的文件,目标是使用专门为我的平台制作的 GDB 分析这个核心转储。
我一直在寻找核心转储规范或详细格式,但没有找到我想要的:
- 我的核心转储文件需要哪些部分?
- 它们是如何组织到 ELF 容器中的?
- 我如何从二进制 RAM 转储(+ 寄存器值)转到类似文件的核心转储。
这必须最好在 C 中完成,我想我可以使用libelf库来帮助我构建文件,但是我没有找到有关在该文件中放入什么以及以哪种格式放置的相关信息,所以任何线索、链接或建议受到欢迎。
注意:这不是关于引发异常并让内核为我完成工作,我可以做到,但我确实需要自己收集 RAM 并将数据手动注册到 elf 核心转储中。
谢谢 !