从堆栈转储和.elf文件中提取FreeRTOS / ARM / C ++堆栈跟踪的工具?

时间:2016-11-17 22:12:28

标签: c++ arm elf freertos cortex-m

我有一个运行FreeRTOS的ARM Cortex-M4嵌入式系统。我已经实现了一个崩溃日志转储机制,它在发生致命错误时将文件写入存储设备,例如被零除,空指针,地址错误,无效指令或断言。在这个文件中,除其他外,我写了异常时堆栈的内容。

该系统捕获现场发生的崩溃,因此我们的想法是分析返回给我的崩溃并尽可能地确定问题的根源。我可以轻松地将日志连接到编译该代码版本时生成的.elf。我只需要一种方法来解析它。

我认为有些工具可以做到这一点(我不能成为第一个这样做的人),但是我在找到适合该法案的系列管(tm)上遇到了麻烦

是否有一个很好的起点来创建一个工具,可以从编译中解析.elf并遵循堆栈转储来创建这样的报告?

1 个答案:

答案 0 :(得分:1)

为了这个问题的其他人的利益,这就是我正在做的事情:

Google有一个名为" breakpad"可以解析" minidump"中的.elf和crashlog文件格式,最初由微软创建,并由谷歌改编为Chrome。

我正在编写一个工具,将我的堆栈跟踪转换为minidump格式,希望使用breakpad工具来分析我的崩溃日志。

这是一个指向breakpad的链接:https://github.com/google/breakpad/blob/master/docs/getting_started_with_breakpad.md

相关问题