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

gdb调试core文件

时间:2016-04-27 18:49:12      阅读:323      评论:0      收藏:0      [点我收藏+]

标签:

本人最近正在学习调试技术,此处对栈溢出做一些总结。

gdb的基本使用就不多扯了。

主要针对发行在外的release版本的软件出现问题时的调试。

我发现,只要源码相同,在gdb的命令行下或者开启gdb时,指定的可执行文件是debug版的,是可以显示出正确的符号信息的。这个大大地提高了调试效率。

一般来讲,查看堆栈就是使用bt,这个时候加上bt full会让你更加满意,因为这里面可以显示出局部变量信息。

另一点是查看寄存器中的值,主要是sp和ip。指令:i r

查看内存信息,指令x。x/???这个?代表某种格式,比如x/10xw $sp以十六进制显示栈指针开始的地址10个字节的内容。

i files这个指令可以查看当时文件加载到内存时的映射信息,这对查看栈溢出很有作用,栈这个段一般位于最后面,栈底和sp指针一对比基本就知道是否发生栈溢出了。

 

gdb调试core文件

标签:

原文地址:http://www.cnblogs.com/leo0000/p/5439722.html

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