core dump又叫核心转储, 当程序运行过程中发生异常, 程序异常退出时, 由操作系统把程序当前的内存状况存储在一个core文件中, 叫core dump. (linux中如果内存越界会收到SIGSEGV信号,然后就会core dump)
在程序运行的过程中,有的时候我们会遇到Segment fault(段错误)这样的错误。这种看起来比较困难,因为没有任何的栈、trace信息输出。该种类型的...
分类:
数据库 时间:
2014-06-20 09:56:07
阅读次数:
299
系统配置了coredump后,当程序异常终止时操作系统会在指定的目录下按指定的文件名格式产生一个core文件。core文件是程序内存映像以及相关的调试信息,通过gdb调试coredump文件可以知道导致程序异常终止的原因。1、系统配置coredump 首先是打开coredump,通过ulimi...
分类:
系统相关 时间:
2014-06-18 09:24:20
阅读次数:
333
七、八年前写过一篇《用GDB调试程序》,于是,从那以后,很多朋友在MSN上以及给我发邮件询问我关于GDB的问题,一直到今天,还有人在问GDB的相关问题。这么多年来,有一些问题是大家反复在问的,一方面,我觉得我以前的文章可能没有说清楚,另一方面,我觉得大家常问的问题正是最有用的,所以,在这里罗列出来。...
分类:
数据库 时间:
2014-06-14 23:17:40
阅读次数:
319
用GDB调试程序GDB概述————GDB是GNU开源组织公布的一个强大的UNIX下的程序调试工具。也许,各位比較喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但假设你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是...
分类:
数据库 时间:
2014-06-14 21:01:10
阅读次数:
245
对于希望保存自己苦心设置一天的断点,这只是一个很小很小的方法,但是,没有见到它之前,我就是一个一个复制断点位置的。希望对大家有帮助!...
分类:
数据库 时间:
2014-06-10 06:02:21
阅读次数:
444
转载自csdn,作者haoel,链接http://blog.csdn.net/haoel/article/details/2879用GDB调试程序GDB概述————GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如...
分类:
数据库 时间:
2014-06-09 22:23:39
阅读次数:
369
GDB多线程调试的基本命令。
info threads
显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个。 前面有*的是当前调试的线程。
thread ID
切换当前调试的线程为指定ID的线程。
break thread_test.c:123 thread all
在所有线程中相应的行上设置断点
...
分类:
数据库 时间:
2014-06-07 15:26:57
阅读次数:
320
description
用gdb debug linux kernel容易吗?其实要走到这步真的不容易啊,其实也难道是不难,就是要知道的东西太多了。用gdb debug linux kernel 可以有2中方式:UML和qemu方式,这里主要说qemu,从源码编译安装qemu很费劲。
准备环境
linux OS: Debian7.5-i386(当时最新的Wheezy,装在VMware...
分类:
数据库 时间:
2014-06-04 21:12:03
阅读次数:
670
利用gdb[i]调试nginx[ii]和利用gdb调试其它程序没有两样,不过nginx可以是daemon程序,也可以以多进程运行,因此利用gdb调试和平常会有些许不一样。当然,我们可以选择将nginx设置为非daemon模式并以单进程运行,而这需做如下设置即可:
daemon off;
master_process off;
这是第一种情况:
这种设置下的nginx在gdb下调试很普通,过...
分类:
数据库 时间:
2014-06-02 04:56:02
阅读次数:
417
最近在搭建游戏的android框架,零零散散的遇到很多问题,暂时记录下来。首先一个最大的问题是,有的c++代码可以调试,有的不可以调试。尝试了命令行的gdb调试,也还是不行,最后还是选择打log的方式。遇到崩溃的问题,最好还是找个可以调试的机器,这样能迅速的定位问题。然后是命令行编译的问题cygwi...
分类:
其他好文 时间:
2014-05-31 01:17:42
阅读次数:
365