1.引言 在日常程序开发中不免遇到类似空指针操作导致程序崩溃的问题,所以需要一定的手段去定位bug,而断点调试是普遍使用的技巧,比如Windows中用VC++的debug模式进单步运行、断点调试等,有很友好的图形化操作界面,而在Linux中使用的是没有图形界面的调试工具-GDB(听说eclipse支 ...
分类:
数据库 时间:
2019-03-02 18:47:14
阅读次数:
204
1.引言 在日常程序开发中不免遇到类似空指针操作导致程序崩溃的问题,所以需要一定的手段去定位bug,而断点调试是普遍使用的技巧,比如Windows中用VC++的debug模式进单步运行、断点调试等,有很友好的图形化操作界面,而在Linux中使用的是没有图形界面的调试工具-GDB(听说eclipse支 ...
分类:
数据库 时间:
2019-03-02 18:45:54
阅读次数:
199
在调试python程序时,经常需要从gdb attach上去,跟踪stack信息。 虽然DebuggingWithGdb[https://wiki.python.org/moin/DebuggingWithGdb]提供了不错的方法,但是某些情况下还是需要gdb原始操作的。 其中重要的是:co_fil ...
分类:
数据库 时间:
2019-02-25 18:14:08
阅读次数:
229
1.使用命令:gcc demo.c -o app -g 生成app 2.gdb app 3.list命令,列出代码,后面可以使用l代替list 4.输入b + 行号,在对应的行号设置断点,b + 行号 if 。。。设置条件断点 5.info b 可以查看断点信息 6.可以取消断点 disable + ...
分类:
数据库 时间:
2019-02-23 15:58:43
阅读次数:
256
gdb -p 12999 -tui 先显示win信息(输入:info win) 显示如下: SRC (35 lines) <has focus> CMD (17 lines) 我们要改的是SRC高度,输入 winheight SRC +10 winheight SRC -10 以上为立即生效的,但是 ...
分类:
数据库 时间:
2019-02-17 10:54:31
阅读次数:
222
一.方法一:常用方式,也是一google一堆的方式 我们首先需要找到call table-with-offset的特征,先看下面的代码 syscall_call: call *sys_call_table(,%eax,4) 假设我们没有vmlinux可供gdb反汇编,那也只有采用模拟的方式了,模拟出 ...
分类:
系统相关 时间:
2019-02-17 10:34:43
阅读次数:
218
2016-12-05 10:08:58 【手册】GDB调试指令 ...
分类:
数据库 时间:
2019-02-13 11:07:16
阅读次数:
295
这个实验曾经做过 这次又做了一遍,对之前的过程作了补充 binary bomb 一、实验目的: 增强对程序机器级表示、汇编语言、调试器和逆向工程等理解。 二、实验要求: 1熟练使用gdb调试器和objdump; 2单步跟踪调试每一阶段的机器代码; 3理解汇编语言代码的行为或作用; 4“推断”拆除炸弹 ...
分类:
其他好文 时间:
2019-02-10 12:17:34
阅读次数:
944
在已经启动的进程中使用gdb,用gdb attach 查看so文件中的函数列表 nm -D *.so 关于c、c++类的gdb调试,强烈推荐一本书:debug hack ...
分类:
其他好文 时间:
2019-02-06 10:45:50
阅读次数:
141
工作中遇到奇怪的事,加载增量的时候加载不上。于是开始分析原因,log里边没有任何错误信息,只有加载完成的标志。增量的数据在目录里边是存在的,但是显示的目录大小却不是4096,而是17,不知道为什么。后来gdb调试,发现没有取到对应的增量的文件夹目录。而这是用一个函数GetChildDir()来实现的 ...
分类:
其他好文 时间:
2019-02-03 14:00:42
阅读次数:
215