gpt4 book ai didi

debugging - 调试嵌入式软件(核心转储)

转载 作者:行者123 更新时间:2023-12-04 17:55:49 25 4
gpt4 key购买 nike

我目前正在开发板载嵌入式 CPU (ARM cortex-M0)。我遇到了崩溃 (HardFault),因此,我正在尝试调试它们。

目前我可以获得内存转储(我通过 printf 控制台以十六进制形式发送所有内容,这是我对内存的唯一访问权限)。

我的想法是将该转储作为核心转储加载到 gdb,从而能够调试程序。如何从原始内存转储创建“真正的”核心转储文件,以便我可以将其直接提供给 gdb?

我还尝试在 gdb 模拟器中运行我的程序,以便对我的原始内存使用 restore 命令,但我不明白如何运行它。你有想法吗?

其实这里的主要问题是:如何根据程序elf和原始内存内容创建一个兼容gdb的coredump文件?

最佳答案

有一对图书馆可以做到这一点:CrashCatcherCrashDebug .这首先打印一个转储(您已经在做,但它以特定格式打印),第二个接口(interface)进入 gdb 以允许加载转储。出于某种原因,CrashDebug 不创建核心文件,而是使用 gdb 的 target remote 命令连接到 gdb。不过效果一样。它支持 Cortex-M0、M3 和 M4。

关于debugging - 调试嵌入式软件(核心转储),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40504659/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com