Advanced .NET Debugging (Addison-Wesley Microsoft Technology Series)

( 1 )

Overview

“Mario Hewardt’s Advanced .NET Debugging is an excellent resource for both beginner and experienced developers working with .NET. The book is also packed with many debugging tips and discussions of CLR internals, which will benefit developers architecting software.”

–Jeffrey Richter, consultant, trainer, and author at Wintellect

“Mario has done it again. His Advanced Windows Debugging (coauthored with Daniel Pravat) is an invaluable resource ...

See more details below
Other sellers (Paperback)
  • All (12) from $34.07   
  • New (8) from $36.26   
  • Used (4) from $34.07   
Advanced .NET Debugging

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac

Want a NOOK? Explore Now

NOOK Book (eBook)
$27.49
BN.com price
(Save 42%)$47.99 List Price

Overview

“Mario Hewardt’s Advanced .NET Debugging is an excellent resource for both beginner and experienced developers working with .NET. The book is also packed with many debugging tips and discussions of CLR internals, which will benefit developers architecting software.”

–Jeffrey Richter, consultant, trainer, and author at Wintellect

“Mario has done it again. His Advanced Windows Debugging (coauthored with Daniel Pravat) is an invaluable resource for native code debugging, and Advanced .NET Debugging achieves the same quality, clarity, and breadth to make it just as invaluable for .NET debugging.”

–Mark Russinovich, Technical Fellow, Microsoft Corporation

The Only Complete, Practical Guide to Fixing the Toughest .NET Bugs

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 (advanceddotnetdebugging.com) contains all sample code, examples, and bonus content.

Read More Show Less

Editorial Reviews

From the Publisher

Praise for Advanced .NET Debugging

“While the .NET environment provides a developer with a powerful toolbox to accomplish their goals, it can often be a daunting task to debug some of the issues that inevitably crop up during software development. This book provides the crucial details about how the CLR works internally, which you need to know to diagnose many classes of bugs in your .NET programs, and it provides clear examples of how to solve the same types of issues we see our customers struggle with on a daily basis. This book is required reading for all serious .NET developers.”

—Lee Culver, CLR Quick Response Team, Microsoft Corporation

“Have you ever wondered why your .NET application is not responding? Or why it’s intermittently consuming high CPU? Or crashing? When things go wrong you need to think low level, using the proper knowledge and tools to investigate the internals of your application. Advanced .NET Debugging delivers the knowledge necessary to quickly isolate nasty software problems. Welcome to the debugging world!”

—Roberto A. Farah, Senior Premier Field Engineer, Microsoft Corporation

“Mario Hewardt’s Advanced .NET Debugging is an excellent resource for both beginner and experienced developers working with .NET. The book is also packed with many debugging tips and discussions of CLR internals that will benefit developers architecting software. I highly recommend Mario’s book.”

—Jeffrey Richter, consultant, trainer, and author at Wintellect

“This book talks about tools such as SOS in the kind of depth that I have not seen elsewhere. It’s a definite aid in understanding and debugging managed application behavior.”

—Maoni Stephens, GC Developer, Microsoft Corporation

Advanced .NET Debugging is essential reading for someone who wants to get under the covers and obtain an intimate understanding of how the .NET Common Language Runtime works. It clearly identifies the layout of the system and how the assemblies are loaded and organized. I recommend it to anyone who wants to debug more complex issues brought on by synchronization problems and corruption. It also effectively addresses the difficult task of postmortem debugging.”

—Pat Styles, Microsoft Corporation

Read More Show Less

Product Details

Meet the Author

Mario Hewardt, senior development lead at Microsoft, has pioneered Windows system-level development for more than a decade. He currently leads a development team that builds ground-breaking online IT management solutions. Hewardt is coauthor of Advanced Windows Debugging (Addison-Wesley, 2008).

Read More Show Less

Table of Contents

Foreword xix

Preface xxi

Acknowledgments xxxi

About the Author xxxiii

Part I: Overview 1

Chapter 1: Introduction to the Tools 3

Debugging Tools for Windows 3

.NET 2.0–Redistributable 4

.NET 2.0–SDK 5

SOS 8

SOSEX 10

CLR Profiler 11

Performance Counters 14

Reflector for .NET 15

PowerDbg 16

Managed Debugging Assistants 18

Summary 21

Chapter 2: CLR Fundamentals 23

High-Level Overview 23

CLR and the Windows Loader 26

Application Domains 33

Assembly Overview 38

Assembly Manifest 39

Type Metadata 42

Summary 68

Chapter 3: Basic Debugging Tasks 69

The Debugger and the Debugger Target 69

Symbols 74

Controlling Execution 77

Loading Managed Code Extensions 85

Controlling CLR Debugging 90

Setting Breakpoints 90

Object Inspection 103

Thread Operations 131

Code Inspection 143

CLR Internals Commands 146

Diagnostics Commands 149

SOSEX Extension Commands 151

Crash Dump Files 163

Summary 165

Part II: Applied Debugging 167

Chapter 4: Assembly Loader 169

CLR Loader Overview 169

Simple Assembly Load Failure 179

Load Context Failure 185

Interoperability and DllNotFoundException 195

Debugging Light Weight Code Generation 197

Summary 202

Chapter 5: Managed Heap and Garbage Collection 203

Windows Memory Architecture Overview 204

Garbage Collector Internals 213

Debugging Managed Heap Corruptions 254

Debugging Managed Heap Fragmentation 262

Debugging Out of Memory Exceptions 272

Summary 291

Chapter 6: Synchronization 293

Synchronization Basics 293

Thread Synchronization Primitives 294

Synchronization Internals 306

Synchronization Scenarios 316

Summary 344

Chapter 7: Interoperability 345

Platform Invocation 345

COM Interoperability 352

Debugging P/Invoke Calls 358

Debugging Interop Leaks 373

Debugging COM Interop Finalization 378

Summary 388

Part III: Advanced Topics 389

Chapter 8: Postmortem Debugging 391

Dump File Fundamentals 392

Windows Error Reporting 409

Summary 438

Chapter 9: Power Tools 439

PowerDbg 439

Visual Studio 448

CLR Profiler 460

WinDbg and the CmdTree Command 467

Summary 469

Chapter 10: CLR 4.0 471

Tools 471

Managed Heap and Garbage Collection 472

Synchronization 480

Interoperability 483

Postmortem Debugging 484

Summary 485

Index 487

Read More Show Less

Customer Reviews

Average Rating 1
( 1 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(1)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 2 Customer Reviews
  • Anonymous

    Posted October 20, 2010

    No text was provided for this review.

  • Anonymous

    Posted April 8, 2011

    No text was provided for this review.

Sort by: Showing all of 2 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)