本文主要是介绍Linux coredump异常处理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
什么是coredump异常处理
Linux coredump功能是当Linux下应用程序异常时,Linux内核默认的一种异常信号处理机制,内核会把异常信息与进程内存转储成coredump文件,程序员通过gdb工具可以离线分析应用程序异常时的情况。
1)配置 core 文件生成的目录,其中 %e 表示程序文件名,%p 表示进程 ID,
否则会在程序的当前目录生成 core 文件;
echo /data/coredump/core.%e.%p >/proc/sys/kernel/core_pattern
-
当前执行程序的用户对 core 目录有写权限 且 有足够的空间存储 core 文件;
-
生成不受限制的 core 文件;
ulimit -c unlimited
演示代码:
#include<stdio.h>int func(int * p)
{int y = *p;return y;
}void func1(int *x){printf("x:%d\n",*x);
}
void func2(int *x){printf("x:%d\n",*x);
}
这篇关于Linux coredump异常处理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!