- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录
第1篇 绪论 1
第1章 软件调试基础 3
1.1 简介 3
1.1.1 定义 3
1.1.2 基本过程 5
1.2 基本特征 6
1.2.1 难度大 6
1.2.2 难以估计完成时间 7
1.2.3 广泛的关联性 7
1.3 简要历史 8
1.3.1 单步执行 8
1.3.2 断点指令 10
1.3.3 分支监视 11
1.4 分类 12
1.4.1 按调试目标的系统环境分 12
1.4.2 按目标代码的执行方式分 12
1.4.3 按目标代码的执行模式分 13
1.4.4 按软件所处的阶段分 13
1.4.5 按调试器与调试目标的相对位置分 14
1.4.6 按调试目标的活动性分 14
1.4.7 按调试工具分 15
1.5 调试技术概览 15
1.5.1 断点 15
1.5.2 单步执行 16
1.5.3 输出调试信息 17
1.5.4 日志 17
1.5.5 事件追踪 18
1.5.6 转储文件 18
1.5.7 栈回溯 18
1.5.8 反汇编 19
1.5.9 观察和修改数据 19
1.5.10 控制被调试进程和线程 19
1.5.11 学习调试技术的意义 19
1.6 错误与缺欠 20
1.6.1 内因与表象 20
1.6.2 谁的Bug 21
1.6.3 Bug的生命周期 22
1.6.4 软件错误的开支曲线 22
1.7 与软件工程的关系 24
1.7.1 调试与编码的关系 24
1.7.2 调试与测试的关系 25
1.7.3 调试与逆向工程的关系 25
1.7.4 调试尚未得到应有的重视 26
1.8 本章总结 26
参考文献 26
第2篇 CPU的调试支持 27
第2章 CPU基础 29
2.1 指令和指令集 29
2.1.1 基本特征 30
2.1.2 寻址方式 31
2.1.3 指令的执行过程 31
2.2 IA-32处理器 32
2.2.1 80386处理器 33
2.2.2 80486处理器 33
2.2.3 奔腾处理器 34
2.2.4 P6系列处理器 35
2.2.5 奔腾4处理器 37
2.2.6 Core 2系列处理器 37
2.3 CPU的操作模式 38
2.4 寄存器 40
2.4.1 通用数据寄存器 40
2.4.2 标志寄存器EFLAGS 41
2.4.3 MSR寄存器 42
2.4.4 控制寄存器 42
2.4.5 其他寄存器 45
2.4.6 64位模式时的寄存器 46
2.5 理解保护模式 46
2.5.1 任务间的保护机制 47
2.5.2 任务内的保护 47
2.5.3 特权级 48
2.5.4 特权指令 49
2.6 段机制 50
2.6.1 段描述符 50
2.6.2 描述符表 52
2.6.3 段选择子 52
2.6.4 观察段寄存器 53
2.7 分页机制(Paging) 55
2.7.1 页目录(Page Directory) 56
2.7.2 页表(Page Table) 57
2.7.3 页目录指针表(Directory-Pointer Table) 57
2.7.4 地址翻译 57
2.7.5 使用WinDBG观察分页机制 58
2.7.6 4MB内存页的情况 60
2.7.7 WinDBG的有关命令 61
2.8 系统概貌 62
2.9 本章总结 64
参考文献 64
第3章 中断和异常 65
3.1 概念和差异 65
3.1.1 中断 65
3.1.2 异常 66
3.1.3 比较 67
3.2 异常的分类 67
3.2.1 错误类异常 67
3.2.2 陷阱类异常 68
3.2.3 中止类异常 68
3.3 异常例析 69
3.3.1 列表 69
3.3.2 错误代码 70
3.3.3 示例 70
3.4 中断/异常优先级 72
3.5 中断/异常处理 73
3.6 本章总结 74
参考文献 74
第4章 断点和单步执行 75
4.1 软件断点 75
4.1.1 感受INT 3 75
4.1.2 在调试器中设置断点 76
4.1.3 断点命中 77
4.1.4 恢复执行 79
4.1.5 特别用途 79
4.1.6 断点API 80
4.1.7 系统对INT 3的优待 80
4.1.8 观察调试器写入的INT 3指令 82
4.1.9 归纳 83
4.2 硬件断点 83
4.2.1 调试寄存器概览 84
4.2.2 调试地址寄存器 84
4.2.3 调试控制寄存器 85
4.2.4 指令断点 87
4.2.5
您可能关注的文档
- 全国专业技术人员计算机应用能力考试科目(模块)选择快速通道.doc
- 全国专业技术人员计算机应用能力考试科目(模块)选择快速通道1.doc
- 全国专业技术人员计算机应用能力考试模块选择.doc
- 全力打造“寿光民声”服务平台 谋求服务型政府建设新发展.doc
- 全面解析无盘方案网吧施工全过程.doc
- 全面了解还原精灵保护和恢复数据技巧(图解).doc
- 全面剖析设计师如何和客户谈单.doc
- 全民低成本健康工程—农村三基医疗网底工程解决方案.doc
- 全屏DirectX程序下弹出摸态窗口代码.doc
- 全球设计网站.doc
- 2024至2030年中国氨醇行业市场前景预测及未来发展趋势研究报告.docx
- 2024年中国玻璃底漆市场调查研究报告.docx
- 2024年中国蛋酥卷机市场调查研究报告.docx
- 2024至2030年中国消费电子行业市场前景调查及投融资战略研究报告.docx
- 2024至2030年全球及中国驾驶型街道清洗机行业研究及十四五规划分析报告.docx
- 2024年中国医用术后防粘连薄膜市场调查研究报告.docx
- 2010-2023历年福建福鼎市十校教研联合体初二上期期中考物理卷(带解析).docx
- 2010-2023历年福建福州琅岐中学八年级下期中考试数学试卷(带解析).docx
- 2024年中国深麦片碗市场调查研究报告.docx
- 2024年中国草编工艺品市场调查研究报告.docx
文档评论(0)