Linux core文件详解

当Linux程序崩溃时,会生成core文件,它是内存映像和调试信息的结合,便于程序调试。通过ulimit设置core文件大小,使用gdb进行调试,通过bt或where命令定位错误源。本文介绍了core文件的生成、调试方法及其重要性。
摘要由CSDN通过智能技术生成

1、什么是linux core文件

在一个程序崩溃是,它一般会在特定目录(一般是当前目录下)生成一个core文件。core文件仅仅是一个内存映像(同时加上调试信息),主要用来程序调试。

有人可能要问了,gdb不是可以直接调试吗?“加上断点,想怎么调怎么调”。这话倒是不错,但是假如有个几万行的代码,只给出一个segment fault错误,怎么调?不能进去一行一行的调试吧。core文件就能很好的解决这个问题,调试core文件,使用bt或where命令,可以直接显示程序出错的地方,以及调用该函数的其他函数。

2、怎样产生core文件

直接写一个有错误的程序,运行即可。示例程序如下:

#include<stdio.h>

void f(float x, float y)
{
    printf("%f\n", x/y);
}

int main(int argc, char *argv[])
{
    f(5,0);
    
    return 0;
}


直接运行怎么没有呢?别急,先看看你的系统设置,使用ulimit 命令(这里有介绍),点击打开链接

可以看到core大小为0,所以不能生成core文件&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值