Linux下core文件的生成、使用和关闭

core文件的生成

ulimit -a:检查生成core文件的选项是否打开
Linux下core文件的生成、使用和关闭_第1张图片
那么怎么才能产生core文件呢?
使用ulimit -c unlimited来设置无限大,则任意情况下都会产生core文件,不过使用这个命令必须要在root下使用
Linux下core文件的生成、使用和关闭_第2张图片
接下来我们就写一段代码来演示一下core文件的使用
Linux下core文件的生成、使用和关闭_第3张图片
这段代码显然是有问题的,我们运行程序看会发生什么情况?
Linux下core文件的生成、使用和关闭_第4张图片
生成了一个core.69801的文件,这个就是我们刚才说的core文件,然后我们用gdb调试一下 ,演示一下怎么去使用这个core文件
Linux下core文件的生成、使用和关闭_第5张图片
接着我们使用 bt 命令查看一下调用栈信息看一下程序是在哪出现问题的?
在这里插入图片描述
从这里看到是使用memcpy函数拷贝出现了问题,这样我们就根据程序出现的问题进行调试就可以了

core文件的关闭

通过 ulimit -c 0 就可以关闭它
Linux下core文件的生成、使用和关闭_第6张图片

你可能感兴趣的:(Linux)