SOS.dll(SOS 调试扩展)】的更多相关文章

SOS.dll (SOS Debugging Extension) lays threads associated with a live thread. The -special option displays all special threads created by the CLR. Special threads include garbage collection threads (in concurrent and server garbage collection), debug…
当我们想使用本机调试器(如CDB或WinDBG)调试.NET应用程序时,我们必须在本机调试器和托管世界之间使用"桥",因为本机调试器本身并不理解托管代码.它是本机调试器.为了提供这个桥,CLR附带了一个调试扩展名SOS.DLL.这理解CLR的内部结构,因此允许我们执行诸如输出托管调用堆栈.转储托管堆等操作. Windbg对于这些类型的问题非常有效,但它有其缺点,因为它不是真正的托管调试器,所以在.NET代码中设置断点或单步执行代码,甚至像在visual Studio这样的托管调试器中那…
大家都知道,在调试托管代码时,一定会加载到sos/clr/mscorwks/mscordacwks这些动态库,才能够很好的完成我们的调试工作,那么他们的版本对应关系是怎样的呢,特别是clr.dll/mscorwks.dll有什么关系呢? clr是通用语言运行时库,对应的就是clr.dll/mscorwks.dll,在clr发展过程中,文件名发生了变化,他们的版本对应关系如下: .NET framework 版本 CLR 版本 CLR 文件名 1.1 1.1 mscorwks.dll 2.0 2.…
一.SOS扩展命令 SOS包含几十个命令,要熟练使用SOS,首先要了解SOS有哪些命令.下面给出SOS命令列表. 命令 描述 BPMD [<module name> <method name>] [-md <MethodDesc>] 建立一个断点在指定模块的指定方法上. 如果指定模块和方法尚未被载入,该命令等到该模块被载入并且被即时(just-in-time)编译的通知后再建立断点. CLRStack [-a] [-l] [-p] 只提供托管代码的栈跟踪. -p 选项显…
  SecAnnotate.exe(.NET 安全批注器工具) SignTool.exe(签名工具) Sn.exe(强名称工具) SOS.dll(SOS 调试扩展)   SqlMetal.exe(代码生成工具) Storeadm.exe(独立存储工具) Tlbexp.exe(类型库导出程序) Tlbimp.exe(类型库导入程序) Winmdexp.exe(Windows 运行时元数据导出工具) Winmdexp.exe 错误消息 Winres.exe(Windows 窗体资源编辑器)   此文…
http://blog.csdn.net/cslie/article/details/2158780 SOS 调试扩展 (SOS.dll) 提供公共语言运行时(CLR)内部环境的有关信息,帮助你在WinDbg.exe调试器和Visual Studio中调试托管程序. ![command] [options] 命令 命令 描述 BPMD [<module name> <method name>] [-md <MethodDesc>] 建立一个断点在指定模块的指定方法上.…
SOS.dll 中提供的 Son of Strike 扩展 (SOS),用于调试 WinDbg 中的托管代码.在启动了调试程序并将其附加到托管进程(或加载故障转储) .load C:\Windows\Microsoft.NET\Framework\v4.0.30319\SOS.dll The call to LoadLibrary(C:\Windows\Microsoft.NET\Framework\v4.0.30319\SOS.dll) failed, Win32 error 0n193 "%…
sos.dll/mscordacwks.dll 公共语言运行库(CLR)是执行托管代码的Microsoft.NET框架的核心引擎.简单地说,它通过在托管程序集中使用中间语言和元数据,JIT按需编译代码,构建程序集定义和使用的类型的内存表示,并确保生成的代码是安全的.安全的和可验证的,并在需要时执行.这个引擎本身是用本机代码实现的.当我们想使用本机调试器(如CDB或WinDBG)调试.NET应用程序时(如果我们想使用事后内存转储文件调试它,我们目前做了很多工作),我们必须在本机调试器和托管世界之间…
调试dump文件,加载相匹配版本的sos/clr时,绝大多数都是可以正常使用的. 然而凡事都有例外,今天在做类似工作时,遇到了错误: CLRDLL: Consider using ".cordll -lp <path>" command to specify .NET runtime directory. Failed to load data access DLL, 0x80004005 再次指定mscordacwks.dll所在路径,问题解决. To debug a m…
The version of SOS does not match the version of CLR you are debugging 和 PDB symbol for clr.dll not loaded  解决WinDbg调试Dump文件不同环境mscordacwks.dll版本问题 程序发生了崩溃,我抓了一个mini Dump,Mini dump 有一个优点就是非常的小.比full dump 要小很多. 0:020> .loadby sos clr //首先加载sos 0:020>…