《软件调试》,是2008年6月份出的新书,我觉得比较适合用C++用了比较长时间的人看,这可以提高他们的调试水平。其实,评价一个人是否是编程高手,主要还是看当程序出问题时调试能力。
这本书在当当网上打折后是96元。
以下是这本书的一些介绍:
ACM院士和调试技术先驱Jack B.Dennis教授做历史回顾计算机和操作系统领域资深专家David A.Solomon撰写序言。调试高手笔耕三载集十余年经验成百万言篇,业内专家鼎力相助,汇五十年精华补软件界空白。
您将学习到:
CPU的调试支持,包括异常、断点、单步执行、分支监视、JTAG、MCE等。
Windows操作系统中的调试设施,包括内核调试引擎、用户态调试予系统、验证器、Dr.Watson、WER、ETW、故障转储、WHEA等。
Visual C/C++编译器的调试支持,包括编译期检查、运行期检查,以及调试符号。
WinDBG调试器的发展历史、模块结构、工作模型、使用方法、主要调试功能的实现细节,以及遍布全书的应用实例。
内核调试、用户态调试、JIT调试、远程调试的原理、实现和用法。异常的概念、分发方法、处理方法(SEH、VEH、CppEH),未处理异常,以及编译器编译异常处理代码的方法。
调试符号的作用、产生过程、存储格式和使用方法。栈和堆的结构布局、工作原理和有关的软件问题,包括栈的自动增长和溢出,缓;中区溢出,溢出攻击,内存泄漏,堆崩溃等。
软件的可调试性和提高可调试性的方法。
此外,书中还诠释了很多较难理解的概念,思考了一系列耐人深思和具有普遍意义的问题。本书是对软件调试技术在过去50年中所取得成就的全面展示,也是笔者本人在软件设计和系统开发第一线奋战10多年的经验总结。本书适合每一位希望深刻理解软件和自由驾驭软件的人阅读,不论您是否直接参与软件开发和测试;不论您是热爱软件,还是憎恨软件;不论您是想发现软件中的瑕疵,还是想领略其中蕴含的智慧!
本书直面软件工程中的最困难任务——侦错
围绕软件世界中的最强大工具——调试器
全方位展示了软件调试技术的无比威力和无穷魅力
80个示例程序的源程序文件和项目文件
浏览符号文件的SymView工具
与内核调试引擎对话的KdTalker工具
直接浏览用户态转储文件的UdmpView工具
显示CPU执行轨迹(分支)的Cpuwhere工具
观察IDT、GDT和系统对象的SOZOOmer工具
本书是对软件调试技术在过去50年中所取得成就的全面展示,也是对作者本人在软件设计和系统开发第一线奋战10多年的经验总结。全书共分6篇30章,选取了大量具有代表性和普遍意义的技术细节进行讨论,包括CPU的调试支持、操作系统的调试支持、编译器的调试支持、WinDBG及其实现等,是学习软件调试技术的宝贵资料。该书可供各大专院校作为教材使用,也可供从事相关工作的人员作为参考用书使用。