核心转储文件的设置和查看

设置转储文件名

在/proc/sys/kernel/core_pattern文件中写入内容,%e表示可执行程序名,%t表示时间。默认的情况下生成的core文件名是core。这样如何和别的进程产生的core文件名重合的话,就会被替代。
核心转储文件的设置和查看_第1张图片

设置转储文件大小

因为默认的转储文件大小是0,所以不会生成转储文件。为了能够生成转储文件,需要设置一下转储文件的大小。
核心转储文件的设置和查看_第2张图片

测试

编写主函数

/*************************************************************************
	> File Name: test.c
	> Author: 
	> Mail: 
	> Created Time: 2020年06月20日 星期六 09时37分48秒
 ************************************************************************/

#include

int main(){
    char *Msg = "hello world";
    Msg[0] = '1';
    return 0;
}

核心转储文件的设置和查看_第3张图片
然后使用产生的core文件。
直接使用命令

gdb test core-test-1592618147

核心转储文件的设置和查看_第4张图片
可以看到,能够直接定位到引起段错误的那行代码。

你可能感兴趣的:(C)