Inside Windows Debugging: A Practical Guide to Debugging and Tracing Strategies in Windows

Inside Windows Debugging: A Practical Guide to Debugging and Tracing Strategies in Windows

Tarik Soulami

Language: English

Pages: 600

ISBN: B00D46F9IU

Format: PDF / Kindle (mobi) / ePub

Inside Windows Debugging: A Practical Guide to Debugging and Tracing Strategies in Windows

Tarik Soulami

Language: English

Pages: 600

ISBN: B00D46F9IU

Format: PDF / Kindle (mobi) / ePub


Use Windows debuggers throughout the development cycle—and build better software

Rethink your use of Windows debugging and tracing tools—and learn how to make them a key part of test-driven software development. Led by a member of the Windows Fundamentals Team at Microsoft, you’ll apply expert debugging and tracing techniques—and sharpen your C++ and C# code analysis skills—through practical examples and common scenarios. Learn why experienced developers use debuggers in every step of the development process, and not just when bugs appear.

Discover how to:
* Go behind the scenes to examine how powerful Windows debuggers work
* Catch bugs early in the development cycle with static and runtime analysis tools
* Gain practical strategies to tackle the most common code defects
* Apply expert tricks to handle user-mode and kernel-mode debugging tasks
* Implement postmortem techniques such as JIT and dump debugging
* Debug the concurrency and security aspects of your software
* Use debuggers to analyze interactions between your code and the operating system
* Analyze software behavior with Xperf and the Event Tracing for Windows (ETW) framework

Learn You a Haskell for Great Good!: A Beginner's Guide

Spring in Practice

RabbitMQ Essentials

Building Web Applications with SVG

Foundation ActionScript 3.0 with Flash CS3 and Flex

 

 

 

 

 

 

 

 

 

 

assertions might go unhandled and cause the machine to crash and reboot if they are raised in code that runs in kernel mode. Windows Servicing Terminology Each major Windows release is usually preceded by a few public milestones that provide customers with a preview of the features included in that release. Those prerelease milestones are usually called Alpha, Beta1, Beta2, and RC or release candidate, in this chronological order, though several Windows releases have either skipped some of these

dialog box at its default value, which usually is COM1 (meaning the first serial COM port on the machine). Now you need to set that value Chapter 2  Getting Started   69 to 1394. Pick a value of 1 for the channel (which is just a numeric identifier used by the host debugger when connecting to the target), as demonstrated in the following screen shot: 2. After clicking OK, reboot the machine to commit the changes. 3. After the reboot, connect a host debugger machine to your target by

Hyper-V technology. When the Hyper-V server role is installed, the hypervisor boot driver (hvboot.sys) is enabled, and during the next boot sequence it assumes the responsibility of loading the hypervisor corresponding to the host Chapter 2  Getting Started   73 machine CPU type (hvax64.exe for AMD-V and hvix64.exe for Intel-VT). The original Windows Server 2008 R2 OS is then made the primary partition, and new virtual machines for supported OS versions can then be installed as child

mscorlib_ni+0x93e6f5 mscorlib_ni+0x82a7aa clr!CallDescrWorker+0x33 clr!CallDescrWorkerWithHandler+0x8e clr!MethodDesc::CallDescr+0x194 clr!MethodDesc::CallTargetWorker+0x21 clr!MethodDescCallSite::Call_RetArgSlot+0x1c clr!ClassLoader::RunMain+0x24c clr!Assembly::ExecuteMainMethod+0xc1 clr!SystemDomain::ExecuteMainMethod+0x4ec clr!ExecuteEXE+0x58 Fortunately, the !clrstack command from the SOS debugger extension allows you to see the ­managed frames in the thread’s call stack. 0:000> !clrstack OS

TARIKS-LP03:0 ... State LISTENING 2. On the remote machine, start a new windbg.exe instance and connect to the stub ­process on the target machine using the File\Connect to a Remote Stub menu action. Leave the ­Connection String combo box empty, and enter the target machine name in the new Browse Chapter 3  How Windows Debuggers Work   119 dialog box. WinDbg then automatically enumerates all the open stub sessions on the target machine for you, as demonstrated in the following screen

Download sample

Download