- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GDB快速上手培训.ppt
UNIX C/C++调试简介 Gdb基本使用及常用调试技巧 史红哲 2004/06/01 课程简介 调试的基本方法 GDB的基本使用 实战GDB 常见内存问题 CORE文件 DAEMON进程 CGI的调试 调试的基本方法 静态代码检查 日志 日志级别 根据日志定位错误 使用一些grep,find等使用工具快速定位程序错误 动态执行分析(GDB等其它工具) Gdb简介 什么是GDB? gdb是一款自由软件,最早由Richard Stallman编写。 主要用来C/C++程序源码级的调试。 GDB能做什么? * 运行程序,可以指定参数 * 设置断点 * 察看内存及堆栈的信息 * 动态改变程序的行为 * 单步执行(Step) Gdb的基本使用 编译 * 加上 –g 选项 * 注意 –g和-O选项,尽量不要同时加 运行 * msgdev ~$ gdb program * 可以不带任何参数运行gdb, 然后在 gdb的提示符下用 file program 装载程序 退出 * gdb quit Gdb常用命令行选项 -d 指定source的目录,gdb会到指定的目录中有哪些信誉好的足球投注网站源文件 -args 指定要调试的程序的命令行参数 -xdb 采用兼容XDB的方式(XDB是HP机上的Debugger) -core 指定core文件 -pid 指定进程号,然后attach。会停止进程的执行,受到gdb的控制 Gdb基本指令 断点 数据 文件 运行 堆栈 状态 断点 Break 设置断点,根据行号或者函数名 break 文件名:行号 [if 条件表达式] break 函数名 break 类名::成员函数名 Condition 为断点设置条件 condition 断点号 表达式 Watch 跟踪变量 watch 表达式 表达式中的变量必须是在当前环境下可见的 Delete breakpoints delete breakpoints 断点号 Enable/disable Tip: 使用help breakpoints获取指令 察看数据 Print prinf 表达式 Ptype ptype 变量 X x/FMT ADDRESSS FMT=数值+格式+类型 数值是一个整数,格式和类型都是一个字符 格式: o(octal), x(hex),d(decimal),u(unsigned decimal), t(binary), f(float), a(addresss), I(instruction), c(char), s(string) 类型: b(byte), h(halfword), w(word), g(giant, 8bytes) ADDRESSS可以是表达式 Call 调用函数,需要在运行的过程中才能够使用。 文件 Directory 增加源文件有哪些信誉好的足球投注网站目录 core-file 加载CORE文件 File 加载可执行文件 List 显示文件内容 Load symbol-file 运行程序 Run 运行程序,run 参数表 定向符也支持 运行程序(2) Continue 继续运行指令 运行程序(3) Attach Attach pid 连接到某个正在运行的进程,被连接进程 停止运行,此时可以设置断点等gdb指令,用continue可以继续运行。 运行程序(4) Detach 离开某个进程 运行程序(5) Step 单步运行程序(源码级别的) 遇到函数会进入到函数内部 运行程序(6) Next 单步运行程序,遇到函数作为一条语句,不会进入到函数内部 堆栈信息 backtrace/bt 查看调用栈帧的序列信息 Up 选择调用栈帧序列中的上一个栈帧,并且打印出相关信息 Down 选择调用栈帧序列中的下一个栈帧,并且打印出相关信息 Frame 选择指定的栈帧 栈帧(stack frame) Stack frame是指保存函数调用上下文信息的一段堆栈区域 Stack frame结构 local variables+ebp+retaddr+parameters local variables是低地址,parameters是高地址 Call sequences(调用序列) 是指程序运行过程中形成的stack frame序列,嵌套调用越多,stack frame越多 察看状态 Info * 显示各类被调试程序的信息 info break info functions info f
您可能关注的文档
- 5-数据通信网络-2015.pdf
- 5.12地震带给我们的反思 .ppt
- 50是一款非常不错的Cisco(思科)网络设备模拟器.doc
- 50是一款非常不错的Cisco思科网络设备模拟器.doc
- 50部世界名著中最经典的50句话.pdf
- 50部世界名著中的经典语言.pdf
- 512高速铁路工程建设管理 .doc
- 51ppt模板.ppt
- 51单片机知 .ppt
- 51单片机经典入门学习教程.pdf
- Get the Address of Variables in Visual Basic获取VB变量地址.doc
- Getting Started with UML.pdf
- GMP认证申请流程.pdf
- GPS(定位原理).ppt
- GSM BSS系统的Gb Flex.pdf
- GT23L32S4W用户手册V35.pdf
- Guideline on information sensitivity,classification,and ....doc
- H-REAP模式配置范例.pdf
- H3CWLAN认证试题2015版本试题.doc
- hasuploaded_Teaching Visual BASIC.pdf
文档评论(0)