linux gdb bt core,core文件与gdb调试

本文简单介绍core文件与gdb调试core文件的方法

概要:

1. core 文件

2. 配置core程序崩溃时产生文件

3. 可修改core文件名

4. 产生core文件的情形

5. gdb调试core文件

a) gdb -c [可执行程序]

b) gdb命令:backtrace / bt

c) gdb命令:up/down/frame

d) gdb命令:info locals

e) gdb命令:info args

f) gdb命令:print / print *

1. core 文件

linux/unix下,可执行程序崩溃时会产生core文件。core文件是内存映象,可用于调试程序找出程序崩溃的原因。

2. 配置core程序崩溃时产生文件

linux/unix下,通过limit -a,可以查看系统是否对可程序的崩溃生成core文件。其中core file size 便是指产生core文件的大小。下面是freebsd系统中输出limit -a 输出的一行,unlimited表示不限制,如果 unlimited 为 1024,则表示产生core文件最大为 1024块,每块大小为512字节。如果为0,则表示不产生core文件。core file size      (512-blocks, -c)  unlimited

core file size      (512-blocks, -c)  1024

core file size      (512-blocks, -c)  0

通过limit命令,可以改变设置。如 ulimit -c unlimited 或 limit -c 1024等。

3. 可修改core文件名

core文件产生于程序的工作目录,不通系统命名不一样 freebsd 下,默认命名为 程序名.core ,这个名称是可以修改的。freebsd下,通过 man core 可以知道,通过sysctl可以查看core文件名的规则和对其进行修改。下面是指core文件名组成是 程序名.core。

root@freebsd:/ # sysctl -a | grep corefile

kern.corefile: %N.core

freebsd下查看 man core,可以知道core文件命名时可用的规则:

The name of the file is controlled via the sysctl(8) variable

kern.corefile.  The cont

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值