10/11/2008

Windows Debugger 介绍 (1)

从本篇博客开始给大家详细介绍Windows平台上常用的软件调试工具,包括Windbg, KD, NTSD, CDB。
从www.microsoft.com/whdc/ddk/debugging可以下载Debugger安装包,安装到本地目录, 比如C:\debugger\,注意不要安装到默认目录,因为默认安装目录(c:\program files\...)可能包含空格,会影响部分功能的正常使用。

在安装目录中可以发现如下可执行文件:Windbg,KD,NTSD,CDB. 其中,Windbg是带有图形界面的调试工具;CDB是基于控制台的调试器;而NTSD是NT符号化调试器(symbolic debugger),可以在后台运行;KD则是Windows的Kernel调试器。

这些调试器支持的CPU架构有X86,X64,IA64;支持Windows NT4SP3+,Win2000,WinXP,Win2003,Vista和Win2008;支持Native和Managed程序调试;支持运行调试器扩展命令。

调式的模式则分为两种: 实时调试--调试器Attach到一个目标运行进程进行调试;事后剖析(post-mortem)调试--目标进程的状态包含在一个Crash Dump中,可以装载并分析Dump,还可以装载任何可执行文件(.exe;.dll;.sys)到内存中。

调试器组件和架构:

其中,windbg.exe, cdb.exe, ntsd.exe是用于管理用户输入和输出的界面程序;dbgeng.dll是执行调试器的动作并为用户界面和扩展程序提供API的模块;dbghelp.dll则从.PDB文件中抽取符号信息表,符号信息是调试任何程序的基础。

没有评论: