码迷,mamicode.com
首页 > 数据库 > 详细

GDB与coredump错误类文件的解析

时间:2015-04-05 09:04:49      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:gdb   参数   编辑器   

                     GDB与coredump错误类文件的解析
  GDB是Linux与UNIX系统下的一款程序调试工具,下面来介绍GDB的用法:

请先看这个程序:
技术分享
这是我们作为实验的一个小程序,共10行输出4
技术分享
进行编译如果要用GDB调试必须要加-g参数
技术分享
这是编译好的文件的正常运行
技术分享
开始调试这个程序 gdb 加文件名
技术分享
现在介绍第一个参数l(list)就是如图这样显示程序的内容, l后还可以加数字,就是打印这个行数上下共10行。
技术分享
start程序开始单步调试,自动执行第一步。
技术分享
参数b 设置断点就是程序函数到这一步暂停等待下一步的指示,b 5 就是在第五行设置断点,特别的如果这一行是空行,它会自动跳到下一行去,所以设置的断点不是绝对的断点,r参数(run)就是运行程序,一步运行完或者到断点暂停,使用r与b 参数可以随心所欲的掌控程序运行。
技术分享
info b查看断点的数量与情况,del 行号,删除已经设定的行号,应经设定的断点会一直存在(请注意这一点)
技术分享
参数c程序继续执行直到遇到下一个断点暂停,n不进入子函数进行单步运行,s进入子函数进行单步运行。
p 打印某个值,set 给某个值赋值。
注意:
系统函数不能单步调试
无初始值的行也会自动跳过

     现在介绍有段错误文件的调试,一般操作系统并不开生成错误文件这个选项,因为这回产生很多的垃圾文件,我们可以通过
     ulimit -c unlimited 开启生成coredump文件。想要永久生效请修改,配置文件:
  bash.profile /etc/profile 或者/etc/security/limits.conf
     然后 echo"/corefile/core-%e-%P-%t"> /proc/sys/kernel/core_pattern 
 产生的core文件名为core-进程名-PID-时间戳 %h添加主机名
     然后就可以调试了gdb coredump 段错误文件就可以看到程序出错最后的栈的信息了。

GDB与coredump错误类文件的解析

标签:gdb   参数   编辑器   

原文地址:http://blog.csdn.net/zmrlinux/article/details/44878789

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!