strace和gdb是Linux环境下的两个常用调试工具,这里是个人在使用过程中对这两个工具常用参数的总结,留作日后查看使用。strace调试工具strace工具用于跟踪进程执行时的系统调用和所接收的信号,包括参数、返回值、执行时间。在Linux中,用户程序要访问系统设备,必须由用户态切换到内核态,...
分类:
数据库 时间:
2015-06-03 09:34:34
阅读次数:
127
在 Linux 上找出并解决程序错误的主要方法您可以用各种方法来监控运行着的用户空间程序:可以为其运行调试器并单步调试该程序,添加打印语句,或者添加工具来分析程序。本文描述了几种可以用来调试在 Linux 上运行的程序的方法。我们将回顾四种调试问题的情况,这些问题包括段错误,内存溢出和泄漏,还有挂起...
分类:
系统相关 时间:
2015-05-23 11:24:38
阅读次数:
254
安装与配置在ubuntu下直接用apt-get install之后不能正常使用,提示缺少调试信息或者编译探测代码时有问题。1. 采用官网上的解决方法2. 可以自己重新编译一次内核,然后再手工编译一次systemtap。这样就可以正常使用了。Systemtap的编译说明,除了下载地址并没有说太多东西。...
分类:
系统相关 时间:
2015-05-18 18:30:05
阅读次数:
346
一:起因
(1)也许我们非常熟悉Windows下的VC6.0 和 CodeBlocks的调试工具 —— 界面化的调试,但是你是否想过你的每一个按键或者快捷键的背后指令是什么,让我们一起走进Linux的gcc动态调试工具GDB
(2)程序调试无非就是:debug(gcc -g -o target source);设置断点(b n);观察变脸(info locals);观察特定值(print ex...
分类:
编程语言 时间:
2015-05-10 12:58:35
阅读次数:
200
介绍一下CTF常用工具,上面一张图作为索引,在比赛之前要了解清楚每个工具的作用,下面就来分别介绍一下。 Reverse GDB Linux调试器,强大的功能,不解释。 IDA Pro 静态反编译神器,同时支持动态调试,最新版本6.6,不解释。 OllyDbg Win下动态调试器,不解释。 用好了以上...
分类:
其他好文 时间:
2015-04-28 11:21:58
阅读次数:
353
linux应用开发-Core Dump
一 coredump
Core Dump又叫核心转存。当程序在运行 过程中发生异常, 这时Linux系统
可以把程序出错时的内存内容存储在一个core文件中, 这种过程叫Core Dump
二 产生段错误的原因
1 数组越界
2 栈溢出
3 访问空指针
4 修改只读内存
三 开启core dump
linux默认关闭了此项功能
开启 u...
分类:
系统相关 时间:
2015-04-22 18:22:35
阅读次数:
260
1.使用printf调试#ifdef DEBUGPrintf(“valriable x has value = %d\n”, x)#endif然后在编译选项中加入-DDEBUG更复杂的调试应用如:#define BASIC_DEBUG 1#define EXTRA_DEBUG 2#define SU...
分类:
系统相关 时间:
2015-03-30 12:39:47
阅读次数:
225
关于Core文件
Linux程序在运行过程中可能会出现奔溃的现象,此时启用Core文件可以记录程序的奔溃现场,方便事后查找问题。...
分类:
数据库 时间:
2015-01-27 16:32:13
阅读次数:
196
一:列文件清单
1. List
(gdb) list line1,line2
二:执行程序
要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符()和外壳通配符(*、?、[、])在内。
如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。
利用set args 命令就可以修改发送...
分类:
数据库 时间:
2015-01-23 11:14:36
阅读次数:
216
b 0x0:0x7c00
c
(0) Breakpoint 1, 0x7c00 in ?? ()
Next at t=16165613
(0) [0x00007c00] 0000:7c00 (unk. ctxt): mov ax, 0x7c0 ; b8c007
b 0x90200
c
(0) Breakpoint 2, 0x90200 in ?? ()
...
分类:
其他好文 时间:
2014-12-28 22:15:18
阅读次数:
155