利用gdb调试核心抛出文件解决段落故障
发布时间
阅读量:
阅读量
如何使用gdb调试coredump文件
- 1. 核心数据文件的生成
- 1.1 核心数据文件的定义
- 1.2 如何创建调试文件?
- 1.3 程序崩溃时是否会产生核心数据文件?
- 1.4 核心数据文件存储在哪里?
- 1.1 核心数据文件的定义
以上输出仅包含改写后的内容
1. 产生coredump文件
1.1 什么是coredump文件?
coredump 文件又称之为 核心转储 文件;
它是进程运行时,突然崩溃的一瞬间,进程在内存中的一个快照。
其中包含了运行堆栈和寄存器信息等。
1.2 如何产生debug文件?
启用调试模式编译时,在崩溃发生时会产生coredump文件。因为编译时加上了 -g 指令。
1.3 程序崩溃时,一定会产生coredump文件吗?
在终端运行命令 ulimit -a 是获取核心文件大小的一种方式。当core file size字段显示数值为0时,则表明无法生成核心转储文件。此外,在以下两种情况下也无法生成核心转储文件:一是core dump文件占用的空间超过设定的core file size;二是该文件所需的存储空间超过了可用磁盘空闲空间。
如果在终端上发现core file size等于零,则可以通过执行ulimit -c unlimited命令将其设置为
全部评论 (0)
还没有任何评论哟~
