Native 崩溃发生时栈本身可能已被破坏,实时回溯成功率难以保证。Breakpad 的 Minidump 方案选择了一条更可靠的路径:
- 在信号处理器这个 "安全环境" 中只做最少操作:收集所有线程的寄存器上下文、原始堆栈内存片段、已加载模块列表等。
- 将这些信息打包成结构化的
.dmpMinidump 文件,写入预先指定的目录。 - Minidump 写入逻辑简单,几乎不依赖动态分配,失败率极低。
- 真正的堆栈回溯与符号化分析交由服务端通过
dump_syms、minidump_stackwalk等工具离线处理,资源充裕、可重试。 - 这种格式被 Chrome、Firefox 等全球主流产品采用,工具链成熟。
相比信号处理器中执行复杂 unwind,Minidump 的失败容错能力和可观察性都更佳。




