读书人

一些调试软件的运用

发布时间: 2012-07-04 19:33:55 作者: rapoo

一些调试软件的使用

(1)gdb的使用,别人的帖子写的不错,直接贴链接吧,有空了自己再重写。

?

【1】gdb常用命令 ?http://blog.csdn.net/gnuhpc/article/details/4368831

? ? ? ?主要讲了常用的gdb命令,对几个易混和重要的自己记录一下。

? ? ? ?r : 运行程序,直到断点

? ? ? ?c:从断点继续运行,直到下一个断点

? ? ? ?s与n的区别:s遇到函数会跳到函数中,继续在函数中单步,而n则直接调用函数,把调用函数看成一步。

? ? ? ?clear 的行号指示的断点,delete 的是info breakpoints中的断点统一编号

? ? ? ?until直到循环体结束,finish直到函数结束。

? ? ? ?字母l,列出10行源代码

? ? ? ?回车,重复上一次命令

? ? ? ?p,打印,可跟表达式, 例如 ?print ?foo(123) ?,以参数123调用函数foo?

? ? ? ?bt:backtrace(回溯的缩写)

【2】GDB堆栈跟踪的方法?http://www.cppblog.com/BlueSky/archive/2007/11/20/37012.html

? ? ? ? 主要讲了gdb中的堆栈帧是如何安排的,以及bt,frame,info locals命令的配合使用,在函数调用层次很多时,frame不得不用啊,写得很实用。

【3】linux下core文件调试方法 ?http://blog.csdn.net/shaovey/article/details/2744487

? ? ? ? 主要讲了在linux下如何配置生成的core文件,其次是如何调用core文件。

?

(2)内存泄露调试?

【1】内存泄露检测工具比较 ?http://apps.hi.baidu.com/share/detail/6083671

? ? ? ? ?里面写的内存泄露发生方式不错:(1)常发性(2)偶发性(3)一次性(4)隐式

【2】应用 Valgrind 发现 Linux 程序的内存问题 ??http://www.ibm.com/developerworks/cn/linux/l-cn-valgrind/

? ? ? ? ?大致讲了一下valgrind的工作原理和几个简单例子。

【3】Valgrind 使用简单说明 ?http://hi.baidu.com/timegoneby/blog/item/ffaad71790bf060dc93d6dd6.html

? ? ? ? ?基本的valgrind使用和简单例子

valgrind常用参数:

默认使用Memcheck工具

-log-file=<file> 将输出的信息写入到filename.PID的文件里,PID是运行程序的进行ID

-leak-check=no|summary|full 要求对leak给出详细信息? [summary]
-leak-resolution=low|med|high how much bt merging in leak check [low]

?

?

?

读书人网 >开源软件

热点推荐