提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
编写程序的时候可能会遇到coredump问题,如下方法可以解析dump,简单定位报错问题
内核版本:5.10
提示:以下是本篇文章正文内容,下面案例可供参考
一、coredump是什么?
Core dump(核心转储)是计算机科学中的一个术语,指的是当一个程序或进程异常终止(通常是由于遇到致命错误,如段错误(segmentation fault))时,操作系统将该进程的内存映像(包括程序代码、数据段、堆栈和其他运行时信息)保存到磁盘上的一个文件。这个文件被称为“core dump”文件。
二、操作步骤
报错:应用程序coredump
collect2: fatal error: ld terminated with signal 11 [Segmentation fault], core dumped
1,查看coredump文件路径:
cat /proc/sys/kernel/core_pattern
|/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h //传递给systemd-coredump进程处理
2,coredumpctl list 列出dump
3,coredumpctl info 1282(pid) // 找coredump路径
4,coredump为lz4压缩 使用lz4命令解压缩
5,调试coredump
gdb /path/dumpbin
然后gdb中输入命令 core /path/coredump 文件 自动解析
总结
解析coredump文件方法