This book enables you to
• Master today’s most powerful Windows debugging tools, including
NTSD, CDB, WinDbg, KD,
and ADPlus
• Debug code that wasn’t designed or written for easy debugging
• Understand debuggers “under the hood,” and manage symbols and
sources efficiently
• Debug complex memory corruptions related to stacks and heaps
• Resolve complex security problems
• Debug across processes: identity tracking, RPC debugger
extensions, and tracking IPCs with
Ethereal
• Find and fix resource leaks, such as memory and handle leaks.
• Debug common thread synchronization problems
• Learn when and how to write custom debugger extensions
• Perform “postmortem debugging” using crash dumps and Windows Error
Reporting
• Automate debugging with DebugDiag and the Analyze Debugger command
Whether you’re a system-level or application developer,
Advanced
Windows Debugging delivers the deep understanding of debugging that
could save you weeks on your very next project.
Advanced .NET Debugging
Advanced .NET Debugging is the first focused, pragmatic guide to
tracking down today’s most complex and challenging .NET application
bugs. It is the only book to focus entirely on using powerful native
debugging tools, including WinDBG, NTSD, and CDB, to debug .NET
applications. Using these tools, author Mario Hewardt explains how
to identify the real root causes of problems—far more quickly than
you ever could with other debuggers.
Hewardt first introduces the key concepts needed to successfully use
.NET’s native debuggers. Next, he turns to sophisticated debugging
techniques, using real-world examples that demonstrate many common
C# programming errors.
This book enables you to
• Make practical use of postmortem debugging, including PowerDBG and
other “power tools”
• Understand the debugging details and implications of the new .NET
CLR 4.0
• Master and successfully use Debugging Tools for Windows, as well
as SOS, SOSEX, CLR
Profiler, and other powerful tools
• Gain a deeper, more practical understanding of CLR internals, such
as examining thread-
specific data, managed heap and garbage
collector, interoperability layer, and .NET exceptions
• Solve difficult synchronization problems, managed heap problems,
interoperability problems,
and much more
• Generate and successfully analyze crash dumps
A
companion web site contains all sample code, examples, and bonus
content.