Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

SOS extension - Why less commands in 2.0 version?

62 views
Skip to first unread message

Alan Cobb

unread,
Apr 6, 2006, 9:11:56 PM4/6/06
to
Hi,

I'm trying to understand the relationship
between the various versions of the SOS
extension for managed code.

Why are the SOS versions that come with WinDbg
(apparently only for .NET 1.x) so much bigger
than the SOS versions that come with the
frameworks? There are 73 commands in the SOS
with the current WinDbg (.NET 1.x only) but
only 49 commands in the SOS with the .NET 2.0
framework. I would have expected the .NET 2.x SOS
to have more commands than the 1.x SOS not less.

Also, why does WinDbg only ship with a SOS for 1.x,
but not for 2.x?

Thanks,
Alan Cobb

(Below are the file sizes and command lists I have)

----------------------------------------------

\Framework\v1.1.4322\SOS.dll 312KB 2003-02-20
\Framework\v2.0.50727\SOS.dll 369KB 2005-09-23


\DebuggingTools\2005-08\clr10\sos.dll
865KB
2005-05-24
\DebuggingTools\2006-01\clr10\sos.dll
832KB
2006-01-18

----------------------------------------------

73 commands listed in SOS.DLL from WinDbg
6.6.3.5: (Apparently only for .NET 1.X)

ASPXPages
Analysis
Bl
Bp
CLRStack
COMState
CheckCurrentException (cce)
ConvertTicksToDate (ctd)
ConvertVTDateToDate (cvtdd)
CurrentExceptionName (cen)
DumpASPNETCache (dac)
DumpAllExceptions (dae)
DumpAssembly
DumpBuckets
DumpClass
DumpCollection (dc)
DumpConfig
DumpDomain
DumpDynamicAssemblies (dda)
DumpField (df)
DumpGCNotInProgress
DumpHeap (dh)
DumpHistoryTable
DumpHttpRuntime
DumpLargeObjectSegments (dl)
DumpLog
DumpMD
DumpMT
DumpMethodSig
DumpModule
DumpModule
DumpObj (do)
DumpRequestTable
DumpRuntimeTypes
DumpSessionStateConfig
DumpSig
DumpStack
DumpStackObjects (dso)
DumpVC
EEHeap
EEStack
EEVersion
ExceptionBp
FAQ
FinalizeQueue
FindAppDomain
FindDebugModules
FindDebugTrue
FindTable
GCHandleLeaks
GCHandles
GCInfo
GCRoot
GetWorkItems
IP2MD
LoadCache
Name2EE
ObjSize
RWLock
SaveAllModules (sam)
SaveCache
SaveModule
SearchStack
StopOnException (soe)
SyncBlk
TD
ThreadPool (tp)
Threads (t)
Token2EE
TraverseHeap (th)
U
VerifyHeap (vh)
X


49 commands listed in SOS.DLL from framework
v2.0.50727:

BPMD
CLRStack
COMState
DumpArray (da)
DumpAssembly
DumpClass
DumpDomain
DumpHeap
DumpIL
DumpLog
DumpMD
DumpMT
DumpMethodSig
DumpModule
DumpObj (do)
DumpRuntimeTypes
DumpSig
DumpStack
DumpStackObjects (dso)
DumpVC
EEHeap
EEStack
EEVersion
EHInfo
FAQ
FinalizeQueue
FindAppDomain
GCHandleLeaks
GCHandles
GCInfo
GCRoot
IP2MD
MinidumpMode
Name2EE
ObjSize
PrintException (pe)
ProcInfo
RCWCleanupList
SaveModule
StopOnException (soe)
SyncBlk
ThreadPool
Threads
Token2EE
TraverseHeap
U
VMMap
VMStat
VerifyHeap

Drew Bliss [MSFT]

unread,
Apr 10, 2006, 3:07:29 PM4/10/06
to
This is more a CLR question and not a windbg question, so we can only give
you high-level answers, but here they are:

1. The code bases for sos for the two CLR versions are significantly
different, and there have been several offshoots. The older CLRs have more
offshoots. I believe the long-term plan is to move towards a CLR 2.0
version of sos which has parity with the 1.1 sos, but we aren't involved in
that effort so I can't give you any more detail.

2. CLR version 2.0 was not complete at the time of the last full debugger
release. We are looking into shipping the 2.0 sos with the next full
debugger release, but it partly depends on whether point #1 is worked out or
not.

"Alan Cobb" <alan.s...@spam.off.alancobb.spam.off.com> wrote in message
news:3teb32tgg0spkugks...@4ax.com...

Alan Cobb

unread,
Apr 12, 2006, 2:21:44 AM4/12/06
to
Hi Drew,

Thanks for the details. So apparently the SOS extension is
something written and maintained by the CLR folks themselves,
which I guess makes sense for an "extension" DLL.

Alan Cobb

0 new messages