Stamp of Software Debugging
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
navigation bar seprate line
意见反馈

如本书的《前言》所说,写作本书主要有以下三个目的:

第一,论述软件调试的一般原理,包括CPU、操作系统和编译器是如何支持软件调试的,内核态调试和用户态调试的工作模型,以及调试器的工作原理。软件调试是计算机系统中多个部件之间的一个复杂交互过程,要理解这个过程,必须要了解每个部件在其中的角色和职责,以及它们的协作方式。学习软件调试原理不仅对提高软件工程师的调试技能至关重要,而且有利于提高它们对计算机系统的理解,将计算机原理、编译原理、操作系统等多个学科的知识融会贯通在一起。

第二,探讨可调试性(Debuggability)的内涵和实现软件可调试性的原则和方法。所谓软件的可调试性就是在软件内部加入支持调试的代码,使其具有自动记录、报告和诊断的能力,从而更容易被调试。软件自身的可调试性对于提高调试效率、增强软件的可维护性,以及保证软件的如期交付都有着重要意义。

第三,交流软件调试的方法和技巧。尽管论述一般原理是本书的重点,本书仍穿插了许多实践性很强的内容。包括调试用户态程序和系统内核模块的基本方法,如何诊断系统崩溃(BSOD)和应用程序崩溃,如何调试缓冲区溢出等与栈有关的问题,如何调试内存泄漏等与堆有关的问题。特别是,本书非常全面地介绍了WinDBG调试器的使用方法,给出了大量使用这个调试器的实例。

为了能够达到以上三个目的,作者可谓是庶竭驽钝,投入了大量时间和汗水。为了评估实际的效果,作者欢迎您提供各种反馈意见,特别是:

  • 本书现有内容中存在的不当和错误。
  • 您希望本书包含,但实际没有包含的内容。
  • 您阅读本书得到的收获,或者您觉得本书写得好的地方。这方面的意见有利于鼓舞作者写这本书的下一版或者下一本书。
  • 您对本书下一版的改进意见。

您可以通过以下两种方式与本书的作者以及其他读者交流:

1,网络论坛

为了便于大家自由交流,畅所欲言,高端调试网站为本书专门开通了如下几个在线论坛。点击下表中论坛的名称,便可以转到对应的论坛中。在发言前,您如果还不是高端调试网站的注册会员,那么您需要进行注册(不需要任何费用)。

《软件调试》的示例程序
如果您在编译、阅读或者使用<a href="http://advdbg.org/books/swdbg/samples.aspx">《软件调试》一书的示例程序</a>遇到问题,那么请在此提出来,我们一起讨论!
《软件调试》的工具
如果您在使用<a href="http://advdbg.org/books/swdbg/tools.aspx">《软件调试》一书的工具程序</a>遇到问题,或者对这个工具有任何改进建议和意见,那么请在此提出来,我们一起讨论!
《软件调试》书友
为《软件调试》的读者朋友提供一个相互认识、相互交流的自由空间!既然大家都有同一个兴趣,那么就相互认识一下吧!
《软件调试》答疑
切问而近思是广被认可的治学之道。提问不仅可以帮助自己,也可以启发其他读者。如果你在阅读《软件调试》时遇到问题,那么可以在这里提出,与大家一起交流!

2,电子邮件

您可以把反馈意见通过如下电子邮件地址发到作者的GMAIL信箱:

对于具有普遍意义的来信,作者将通过本网站的问答栏目回答。对于不具普遍性的问题,作者将尽可能回复您的来信。对于具体的调试问题,作者很可能没有时间一一回答。

navigation bar seprate line
Copyright (C) 2008-2013 Raymond Zhang, All Rights Reserved