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文件是如何生成的?

相关推荐
bosins35 分钟前
将 Hyper-V 上的 Ubuntu 虚拟机内容迁移到 WSL (Windows Subsystem for Linux) 中
linux·windows·ubuntu
我星期八休息1 小时前
扩展—DNS与ICMP
linux·服务器·网络
筝筝ba2 小时前
linux 查询当前登录的用户数量
linux·服务器·网络
woniu_buhui_fei2 小时前
日常工作常用的命令(Linux+JDK)
linux·运维·服务器
coward912 小时前
全志T507 (sun50iw9p1)sunxi pinctrl 子系统实现分析
linux·嵌入式硬件
imaol13 小时前
文件编程--标准IO
linux·运维·算法
我是小灰灰吖3 小时前
解决高频率图像处理中的内存“只增不减”:glibc malloc_trim实战指南
linux·qt
小嵌同学3 小时前
Linux 内核中断处理机制详解:上半部、下半部与延迟执行策略
linux·嵌入式·bsp
breeze jiang4 小时前
TypeScript 工具类型怎么记:从 Pick、Omit 到 keyof 与 Exclude 推导
linux·ubuntu·typescript
深念Y4 小时前
Wine 运行 HiTool 踩坑记录
linux·windows·容器·桌面·wine·虚拟器