Advanced Debugging With Windbg and Sos: Sasha Goldshtein
Advanced Debugging With Windbg and Sos: Sasha Goldshtein
@goldshtn
blog.sashag.net
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
DUMPS 101
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
A DUMP IS A SNAPSHOT OF A
RUNNING PROCESS. YOU CAN SAVE
IT, MOVE IT AROUND, AND ANALYZE
IT LATER. YOU CAN’T “DEBUG” IT.
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
ENTER:
WinDbg SOS
Lightweight GUI debugger WinDbg extension for .NET
Super-scriptable Ships with .NET Framework
Super-extensible Or on the symbol server*
Knows nothing about .NET Knows all about .NET
www.devconnections.com 10
ADVANCED DEBUGGING WITH WINDBG AND SOS
TAKE 2:
!analyze -v !PrintException
!CLRStack .load sosex
!mk !mdt
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
WHAT WE NEED:
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
DEADLOCKS
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
WHAT WE NEED:
!syncblk !mwaits
!mlocks !dlk
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
ADDITIONAL REFERENCES
www.devconnections.com
ADVANCED DEBUGGING WITH WINDBG AND SOS
THANK YOU!
www.devconnections.com 18