在线笔记
全部博文(596)
分类: LINUX
2012-11-30 12:24:11
在出现Segmentation fault的时候,Linux有能力生成一份Core Dump文件,我们激活这种能力:
# ulimit -c unlimited(这一步必须做,否则无法生成core)
ulimit -c 0, 阻止系统生成core文件
生成的Core Dump文件的具体信息可以通过如下命令查看:
# cat /proc/sys/kernel/core_pattern
core
/proc/sys/kernel /core_uses_pid可以控制产生的core文件的文件名中是否添加pid作为扩展,如果添加则文件内容为1,否则为0
可通过以下命令修改此文件:
echo "1" > /proc/sys/kernel/core_uses_pid
这表示会在当前目录生成core文件,接着运行一次demo.sh文件就能生成core文件了:
# ./demo.sh
Segmentation fault (core dumped)
# ls
core.16069
下面到了使用gdb的时候了:
# gdb ./bin core.16069
(gdb) bt
where