debugging in windows

18
TRAVIS HOBRLA SOFTWARE DESIGN ENGINEER WINDOWS EMBEDDED CE BSP TEAM MICROSOFT CORPORATION

Upload: kumari-priyanka

Post on 08-Aug-2015

30 views

Category:

Documents


2 download

DESCRIPTION

Windows CE

TRANSCRIPT

Page 1: Debugging in Windows

TRAVIS HOBRLA

SOFTWARE DESIGN ENGINEER

WINDOWS EMBEDDED CE BSP TEAM

MICROSOFT CORPORATION

Page 2: Debugging in Windows

Debugging prerequisites

CE debug environment

Debug architecture

Debugging tools available to you

Demonstration

Advanced debugging tools

Page 3: Debugging in Windows

Visual Studio 2005 +

Platform Builder

Debug transport

Source code

Your device

Page 4: Debugging in Windows

Visual Studio: the IDE

Platform Builder: a Visual Studio plug-in

Using them, you can:

Build

Download to device

Debug

Page 5: Debugging in Windows

CE debugger affects

Entire OS

Applications Kernel

While debugger is loaded, the OS is

In run state In halted stateOr

Normal app debugging: separate VS2005 or load over debug transport

Page 6: Debugging in Windows

Connects device & host debuggers

KITL: Kernel Independent Transport Layer

Software layer connecting device to host

Supports:

Debugger

Command Shell

Remote Tools

Etc.

KITL active even when these tools aren’t!

Page 7: Debugging in Windows

CE Kernel

KITL:Kernel

Independent

Transport

Layer

Device HW

You

Visual Studio +

Platform Builder

Desktop HWEthernet USB Serial

Kernel Debugger

Transport Driver

Page 8: Debugging in Windows

Visual Studio +

Platform BuilderCE Device

Platform Builder

Debugger

Source Code +

Symbols

Kernel

Drivers

Applications

KITL

Page 9: Debugging in Windows

Watch window

Memory window

Registers window

Processes window

Threads window

Modules window

Source window

Disassembly window

Callstack window

Debug output window

Breakpoints window

Page 10: Debugging in Windows
Page 11: Debugging in Windows
Page 12: Debugging in Windows
Page 13: Debugging in Windows
Page 14: Debugging in Windows

TRAVIS HOBRLA

SOFTWARE DESIGN ENGINEER

WINDOWS EMBEDDED CE BSP TEAM

Page 15: Debugging in Windows

CEDebugX

http://msdn.microsoft.com/en-us/library/bb509784.aspx

Debugger extension

Automatically discovers:Stack overflows, thread starvation, deadlocks, orphaned synchronization objects,

heap corruption

Passive KITL

http://msdn.microsoft.com/en-us/library/aa914894.aspx

Don’t load KITL until an exception occurs

Great for beta testing

Page 16: Debugging in Windows

Hardware-assisted debugging

http://msdn.microsoft.com/en-us/library/aa935824.aspx

Using eXDI (eXtended Debug Interface)

For when KITL is unavailable:Bootloader, early OS boot, ISRs

Postmortem debugging

http://msdn.microsoft.com/en-us/library/aa936043.aspx

Can capture dump file during halted state

Debug later without the device

Page 17: Debugging in Windows

Visual Studio + Platform Builder

CE debugger = system debugger

Debug transport: KITL

Tons of debugging tools available to you

Page 18: Debugging in Windows

© 2009 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.