linux下的core dump功能的开启

1.基本概念
当程序运行的过程中异常终止或崩溃,操作系统会将程序当时的内存状态记录下来,保存在一个文件中,这种行为就叫做Core Dump(中文有的翻译成“核心转储”)。我们可以认为 core dump 是“内存快照”,但实际上,除了内存信息之外,还有些关键的程序运行状态也会同时 dump 下来,例如寄存器信息(包括程序指针、栈指针等)、内存管理信息、其他处理器和操作系统状态和信息。core dump 对于编程人员诊断和调试程序是非常有帮助的,因为对于有些程序错误是很难重现的,例如指针异常,而 core dump 文件可以再现程序出错时的情景。

2、开启core dump
  可以使用命令ulimit开启,也可以在程序中通过setrlimit系统调用开启。
  打开core dump功能
  1. 在终端输入 ulimit -c,输出结果为0,说明系统默认是关闭core dump的,即当程序异常终止时,也不会生成core dump 文件。
  2.开启core dump功能,我们可以输入 ulimit -c unlimited来开启,并且并不限制core dump的文件的大小。
  3. 如果想要永久生效,我们可以修改文件中的/etc/security/limits.conf文件

参考资料:https://www.cnblogs.com/Anker/p/6079580.html

你可能感兴趣的:(Linux)