是否可以手动编写核心文件? 假设我有堆栈,堆,代码和所有处理器寄存器的二进制内存转储。
是否可以创建一个核心文件来查看GDB,就像真正的进程崩溃并生成了这个核心文件一样?
这个的主要用途是我在汇编代码上运行VM。 让我们假设架构是PPC。 当我遇到问题时,我希望能够编写核心文件 可以通过Linux上的GDB读取,以帮助调试问题。
我不确定ELF格式核心文件和其他格式之间的差异是什么。 但我想知道的是,它是否有可能编写一个获得的模块 数据段,代码段,堆栈段和寄存器,并为GDB生成可读的核心文件,如果是这样,它有多复杂。
谢谢, 伊泰
答案 0 :(得分:0)
确实如此。核心的格式有点复杂,并且取决于系统(并且您没有说出您想要解决方案的系统)。是否可以创建一个核心文件来查看GDB,就像真正的进程崩溃并生成了这个核心文件一样?
这answer提供了可能的ELF解决方案。
如果您使用非ELF系统,则必须告诉我们哪一个。