linux下应用程序生成core dump文件

来源:互联网 发布:python的idle是什么 编辑:程序博客网 时间:2024/05/24 06:43

linux下的c程序常常会因为内存访问错误等原因造成segment fault,此时如果系统core dump功能是打开的,那么将会有内存映像转储到硬盘上,之后可以用gdb对core文件进行分析,查看系统发生segment fault时刻的情况。
使用ulimit -a可以查看系统core文件的大小限制
使用ulimit -c[kbytes]可以设置系统允许生成的core文件大小
例如:
ulimit -c 0 不产生core文件
ulimit -c 100 设置core文件最打为100k
ulimit -c unlimited 不限制core文件大小

来看一个例子:
这里写图片描述

1) 编译上面这段代码,gcc memory.c -g -o memory
2) 执行ulimit -c 100设置core文件大小为无限制
3) 执行./memory,系统提示你segment fault并生成了core文件,接下来可以用gdb进行分析了。
4) gdb ./memory core
这里写图片描述

0 0
原创粉丝点击