A kinder, gentler, LINQy interface to windbg
Linqdbg is a .Net library intended to query windbg (cdb, actually) using LINQ in an external program or in a REPL interface.
It provides a gentle, strongly-typed alternative to windbg scripting with some of the most commonly used sos/sosex commands supported.
linqdbg builds upon the ideas behind the excellent powerdbg (http://www.codeplex.com/powerdbg) from which it borrows its main mechanism for windbg/cdb interaction.
It's currently in a very preliminary state.
How to use it
It's a library meant for ad hoc querying or scripting. It has been used successfully with LINQPAD as a kind-of REPL (see the Samples directory for an example of a LINQPad script file).
Plans are made to evaluate Mono csharprepl and integrate linqdbg in VS2010.
- PowerDbg was the inspiration for linqdbg. It's a powershell script meant to pilot windbg.
- SOSNet is an in development project offering a Windows Forms frontend to sos.
Right now, linqdbg offers support for !DumpHeap !Dumpeap -stat and !GCRoot (to address the sweet spot of finding managed memory leaks)
The first version of linqdbg will add:
- A bunch of !DumpXXX commands
- !CLRStack and/or !EEStack
- A way to load a mini dump (attaching to a live process is the only way to go right now)
- Support for CLR 4.0
linqdbg has currently only been tested on .NET 3.5 x86/amd64, with the latest windbg binaries.