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

相关推荐
飞Link1 分钟前
Linux下的Docker安装教程
linux·运维·服务器·docker·容器
Better Bench7 分钟前
ubuntu 不同系统架构(aarch64\arm64\x86_64)安装miniconda以及配置pip镜像
linux·ubuntu·pip
代码游侠8 分钟前
学习笔记——进程
linux·运维·笔记·学习·算法
Risk Actuary11 分钟前
磁道优化分布的一道题
linux·运维·服务器
Swift社区24 分钟前
LeetCode 447 - 回旋镖的数量
linux·算法·leetcode
weixin_4624462324 分钟前
【实践操作】linux记录terminal终端日志 录屏
linux·运维·服务器
水天需01028 分钟前
Linux 命令行换行完全指南
linux·运维·服务器
怀旧,36 分钟前
【Linux系统编程】11. 基础IO(上)
java·linux·服务器
喵了meme39 分钟前
Linux学习日记18:线程的分离
linux·运维·c语言·学习
FreeSoar11 小时前
linux 安装 docker报错处理
linux·运维·docker