基于.NET框架版本在Windbg中加载sos的脚本

我经常在windbg中调试.netframeworkv2.0/v 4.0代码。在v 2.0中,主clr dll称为“mscorwks.dll”,在v 4.0中称为“clr.dll”。很多人都知道,要在v 2.0中加载sos,我们必须输入“.loadby sos mscorwks”,在v 4.0中输入“.loadby sos clr”。这对我来说是一种痛苦。提出了一个基于clr版本自动加载sos的脚本

!for_each_module .if(($sicmp( “@#ModuleName” , “mscorwks”) = 0) ) {.loadby sos mscorwks} .elsif ($sicmp( “@#ModuleName” , “clr”) = 0) {.loadby sos clr}

您可以通过在clr中基于.NET Framework版本设置一个断点来提高它的性能

!for_each_module .if(($sicmp( “@#ModuleName” , “mscorwks”) = 0) ) {bp mscorwks!WKS::GCHeap::SuspendEE “.if (dwo(mscorwks!WKS::GCHeap::GcCondemnedGeneration)==2) {.echo start of gen 2}“} .elsif ($sicmp( “@#ModuleName” , “clr”) = 0) {bp clr!WKS::GCHeap::SuspendEE “.if (dwo(clr!WKS::GCHeap::GcCondemnedGeneration)==2) {.echo start of gen 2}“}

原文地址:https://www.cnblogs.com/yilang/p/12426789.html

时间: 2024-11-13 03:48:35

基于.NET框架版本在Windbg中加载sos的脚本的相关文章

在Python的Django框架中加载模版的方法

在Python的Django框架中加载模版的方法 为了减少模板加载调用过程及模板本身的冗余代码,Django 提供了一种使用方便且功能强大的 API ,用于从磁盘中加载模板, 要使用此模板加载API,首先你必须将模板的保存位置告诉框架. 设置的保存文件就是settings.py. 如果你是一步步跟随我们学习过来的,马上打开你的settings.py配置文件,找到TEMPLATE_DIRS这项设置吧. 它的默认设置是一个空元组(tuple),加上一些自动生成的注释. TEMPLATE_DIRS =

php ci框架中加载css和js文件失败的原因及解决方法

在将html页面整合到ci框架里面的时候,加载css和js失败.原因是ci框架是入口的框架 对框架中文件的所有请求都需要经过index.php处理完成,当加载外部的css和js文件的时候要使 用base_url()函数处理外部的链接. 在控制器中需要先载入url相关的类 public function test() { $this->load->helper('url'); $this->load->view('admin/test'); } 在test.php的view视图中.

如何在uboot上实现从网络下载版本镜像并直接在内存中加载之?

这是作者近期项目上遇到的一个需求,描述如下: 一块MT7620N的路由器单板,Flash中已存放一个版本并可以通过uboot正常加载并启动.现在需要:在uboot上电启动过程中,通过外部按键触发干涉,使得uboot可以从网络上下载一个临时版本,并直接在内存中启动之.即保证Flash中的原有版本不被更改 解决思路如下: 1. 利用单板上的Factory Reset按键,实现外部按键触发. 在uboot的board_init_r函数中,在调用main_loop死循环之前,检测Factory Rese

【原创】从零开始搭建Electron+Vue+Webpack项目框架(五)预加载和Electron自动更新

导航: (一)Electron跑起来(二)从零搭建Vue全家桶+webpack项目框架(三)Electron+Vue+Webpack,联合调试整个项目(四)Electron配置润色(五)预加载及自动更新(六)构建.发布整个项目(包括client和web)(未完待续) 摘要:到目前为止,我们的项目已经具备了PC客户端该有的一些基础功能和调试环境,但是总感觉缺了灵魂,那就是结合实际项目.实际业务的细节处理,缺着吧...这篇文章就介绍一下预加载和自动更新,文字功底有限,如有介绍的不清楚的地方,欢迎留言

《powershell 的版本所引起的加载 FSharp 编译器问题》基本解决

1.FSharp.Core.dll,不光要 Add-Type,还要在编译中引用.但是,在 VS2012 的环境下,就不需要引用,百思不得其解: 2.理顺了大部分系统引用的地址. Function Compiler-FSharp([string] $fSharpCode,[Array]$References) { # 判断 Powershell 的版本 $isAMD64= ($env:PROCESSOR_ARCHITECTURE).Contains( "AMD64" ) $is32= $

android优化从网络中加载图片速度。。

从网络中加载图片主要要注意两个方面的问题: 1.内存管理:图片占的内存很大,假如图片数量多,很容易让系统抛出out of memory的异常. 同时我们也要注意不同android版本中内存管理的区别. 2.性能:图片的加载速度,和加载图片时不影响UI的流畅性 尤其是在ViewPager,GridView 和ListView等等需要在短时间内加载大量图片时,上面两个问题就更加突出了... 要解决上面这个两个问题,我们要用到的技术 1.缩减加载的图片的bitmap 可以通过实现显示图片的view的大

初步解决《powershell 的版本所引起的加载 FSharp 编译器问题》

首先,我们定义一个函数 Compiler-FSharp,有两个参数,一个是 F#  源代码,当然是必须的:另一个是必须的引用,这是可选的. 然后,调用这个函数. Function Compiler-FSharp  ([string] $fSharpCode,[Array]$References) { # 判断 Powershell 的版本 $is32= $PSHOME.Contains("SysWOW64") $isAMD64= ($env:PROCESSOR_ARCHITECTURE

Android中so使用知识和问题总结以及插件开发过程中加载so的方案解析

一.前言 Android中有时候为了效率以及平台开发库的支持,难免会用到NDK开发,那么都会产生一个so文件,通过native方法进行调用,开发和调用步骤很简单,这里就不多说了,本文主要来介绍,我们在使用so的时候总是会出现一些常见的问题,而现在插件化开发也很普遍了,有时候插件中也会包含一些so文件,需要加载,这时候也会出现一些问题.本文就来详细总结一下这些问题出现的原因,以及解决方法,主要还是通过源码来分析. 二.涉及到的源码类 因为本文主要通过分析源码来分析so使用的知识点和问题总结,所以涉

如何在OsgEarth中加载谷歌卫星地图的ArcGISServer服务教程

说明: 本实例演示如何在arcgis中发布下载好的影像瓦片数据,在osgearth中加载发布好的瓦片服务. 本实例使用软件版本:ArcGIS10.2,osg3.3.1和osgEarth2.5 VC10编译环境(参考osgearth加载谷歌卫星地图的源码案例),水经注万能地图下载器. 影像瓦片来源"水经注万能地图下载器".如果没有安装本软件,可以百度"水经注软件"到官方网站下载. 一.下载瓦片数据 启动水经注万能地图下载器,点击"框选下载区域",双