Linux程序崩溃调试

一、简单点的

编译时主动带-g,生成的程序带调试信息,而且开启生成dump文件,这时候可以使用core dump来调试程序,定位问题。可以参考:linux 程序crash 调试、原因分析及问题定位-CSDN博客

二、稍微复杂点

假设生成的可执行文件带了调试信息,那么可以考虑用gdb来调试程序,调试的教程如下:gdb调试

三、再复杂点:如果core dump文件的堆栈信息被破坏了,又该如何定位问题呢?

参考下面博文,借助栈帧信息和寄存器信息来使用gdb-x命令排查问题

四、定位排查问题实战:没有core文件时定位segfault at 0 ip (null) 的问题

上连接:没有core文件时定位段错误问题

五、崩溃时要是没有core dump文件生成,那又该如何排查问题?

借助内核的segfault日志来定位问题:内核segfault定位程序崩溃

写在最后:

coredump文件是如何生成的?

相关推荐
wheeldown10 小时前
【Linux】Linux进程状态和僵尸进程:一篇看懂“进程在忙啥”
linux·运维·服务器·进程
jzwalliser10 小时前
关于Linux生态的补充
linux·语言暴力
半桔10 小时前
【Linux手册】动静态库:从原理到制作
linux·运维·服务器·动态库
z2023050810 小时前
Linux之块设备的多队列的实现机制
linux·运维·服务器
liulilittle10 小时前
Unix/Linux 平台通过 IP 地址获取接口名的 C++ 实现
linux·开发语言·c++·tcp/ip·unix·编程语言
阿贤Linux10 小时前
设置网卡名称为传统命名方式
linux·ubuntu
码界奇点10 小时前
从零构建Linux Shell解释器深入理解Bash进程创建机制
linux·运维·解释器模式·bash·ux·源代码管理
闻道且行之10 小时前
嵌入式|Linux中打开视频流的两种方式V4l2和opencv
linux·笔记·opencv·嵌入式
等风来不如迎风去10 小时前
【bash】命令查看当前目录下文件个数
linux·运维·服务器
守.护11 小时前
云计算学习笔记——日志、SELinux、FTP、systemd篇
linux·云计算·ftp·selinux