欢迎访问 内存溢出 —— 独立后端与系统工程技术博客

专注于分布式系统、Linux内核、数据库存储与后端工程实践

Linux 内核信号处理:SIGSEGV 捕获与 core dump 分析

发表于:|最后更新:|分类:Linux与内核|阅读:167 次

SIGSEGV 通常由非法内存访问触发。通过 core_pattern 保存 core 文件并用 gdb 结合调试符号回栈,可精确定位崩溃指令地址与调用栈。

GDB 调试会话

一、启用 core dump 并分析

bash
# 临时开启 core 生成,文件命名带 pid
ulimit -c unlimited
sysctl -w kernel.core_pattern=/var/core/core.%e.%p

# 使用 gdb 分析 core 文件
gdb /usr/bin/myapp /var/core/core.myapp.12345
(gdb) bt full
(gdb) info registers
(gdb) x/16i $pc