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

相关推荐
实心儿儿4 分钟前
Linux —— 线程池(1)
linux
卧室小白10 分钟前
K8S-Pod基本配置
linux·运维·服务器
yyuuuzz11 分钟前
谷歌云基础服务的入门认知
linux·运维·服务器·数据库·人工智能·github
煜声远播19 分钟前
相册卡顿的系统级排查复盘:fsync 不要在锁里调用
linux
syagain_zsx31 分钟前
Linux进程全面解析:从基础到高级管理(2/3)
linux·运维·服务器
Irissgwe41 分钟前
8-1\IP 分片和组装的具体过程
linux·网络·tcp/ip·网络层·分片·组装
Zevalin爱灰灰1 小时前
makefile从入门到实战 第一章 认识makefile(一)
linux·makefile
Shadow(⊙o⊙)1 小时前
进程间通信0.0-pipe()匿名管道,详细分析进程池调度队列执行逻辑,进程池模拟实现。
linux·运维·服务器·开发语言·c++
CQU_JIAKE1 小时前
6.6aaaaaa
linux·运维·服务器
Apibro1 小时前
【Linux】Qt Creator 中文输入法
linux·qt