问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

DUMP文件分析,该怎么解决

发布网友 发布时间:2022-04-10 10:03

我来回答

2个回答

懂视网 时间:2022-04-10 14:24

2. Windbg可以解决以下问题

◆ 内存高
◆ CPU高
◆ 程序异常
◆ 程序Hang死

3. 使用windbg进行调试分析的两种方式

  • 使用windbg调试器attach到需要调试的进程。(会暂停进程的运行)
  • 抓取进程的dump文件,使用windbg分析dump
  • 一.准备

    1.下载

    官网地址: https://developer.microsoft.com/zh-cn/windows/hardware/windows-driver-kit
    选择对应的工具包下载

    技术分享图片

    2.安装

    1. 下载之后点击安装,可选择安装的工具,我们只选择windbg就可以。安装之后在debuggers文件夹下选择32位或64位程序运行

    技术分享图片

    1. 打开windbg之后,需要设置symbol path,可以按快捷键Ctrl+S。把下面的路径粘贴进去保存。系统进行dump解析等操作的时候会自动下载需要的符号表
      srvc:symcachehttp://msdl.microsoft.com/download/symbols;c:symcache;

    3.抓取dump

    1. 通过procdump获取

    下载地址:https://technet.microsoft.com/en-us/sysinternals/dd996900

    下载之后为压缩包,将文件解压。通过dos命令来生成dump文件。下面为一条语句为示例

    procdump -ma -c 0 -s 3 -n 2 sqlservr.exe -o E:dumps

    这条语句的意思为:当sqkservr.exe这个进程运行时间cpu的占用超过0%,时间超过3秒,则在E:dumps下生成一个dump文件。一直到生成2个为止。下面为命令介绍

  • -ma 生成full dump, 即包括进程的所有内存. 默认的dump格式包括线程和句柄信息.
  • -c 在CPU使用率到达这个阀值的时候, 生成dump文件.
  • -s CPU阀值必须持续多少秒才抓取dump文件.
  • -n 在该工具退出之前要抓取多少个dump文件.
  • -o dump文件保存目录.
  • Sqlservr.exe可替换为进程的ID
  • 下图为运行示例(sqlserver等操作需要cmd以管理员权限打开)

    2. 任务管理器抓取

    可在任务管理器进程右键进程,点击创建转储文件,系统会自动抓取和保存,保存完成会弹出对话框提示保存路径

    技术分享图片

    二.解析

    1.解析dump文件

    通过windbg的菜单,File—>Open Crash Dump选择dump文件打开。打开成功界面如下图所示:

    技术分享图片

    2.命令

    1.基本命令

  • ? 获取命令提示
  • D 查看内存信息
  • K 观察栈
  • ~ 显示和控制线程 ~number s number为线程id 如:~1s为获取1号线程的上下文
  • Q 退出
  • !runaway 查看线程占用cpu时间,可看出哪个线程占用时间最高(所有线程)
  • .dump /ma E:/dumps/myapp.dmp 抓取dump
  • 2.元命令

  • .help 获取命令提示
  • .cls 清屏
  • .ttime 查看线程占用cpu时间,可看出哪个线程占用时间最高(当前线程)
  • 3..扩展命令

  • . chain 获取命令集列表。在已经加载的动态链接库中。
  • .load/.unload 加载/卸载命令模块
  • **!模块名.help **查看某个扩展库中包含的扩展命令
  • 4..Net程序相关命令

    基本

  • !peb或!dlls 列出进程已经加载的dll
  • **!threadpool ** 查看当前CPU状况 线程数等等
  • !dumpheap –stat 统计堆信息
  • !Threads 所有托管线程 -special Crl创建的线程
  • !clrstack 看看这个线程再干嘛 执行那些方法
  • !clrstack –p addr addr:具体方法的参数值地址
  • !do 地址 查看参数值
  • !analyze –v 显示分析的详细信息
  • .reload /i /f 强制重新加载pdb
  • 内存调试

  • **!eeheap –gc ** 获取gc中内存信息
  • !eeheap –loader Loader 堆信息
  • !dumpheap –stat 统计GC堆的信息,统计GC堆上存活的对象
  • !dumpheap -mt < 查看该地址上的对象
  • !gcroot <<对象地址>> 查看对象根
  • **!dumpheap -type <<System.String >> ** 查看string类型在堆中的信息
  • !helproot -查看gcroot的帮助
  • 在解析.Net程序时首先要加载运行环境framework版本对应的SOS.DLL:

    .load C:WindowsMicrosoft.NETFramework64v4.0.30319SOS.DLL

    这里只是写一些比较常用的命令,想要详细了解更多命令了以到官网查看

    3.高内存占用示例

    技术分享图片

    【读取文件代码】

    技术分享图片

    【在代码执行过程中抓取dump文件打开,并加载sos.dll】

    技术分享图片 技术分享图片

    【运行!dumpheap –stat获取最高内存占用的地址】

    技术分享图片

    【!gcroot address获取调用函数】

    最终,我们找到了高内存的调用入口!
    当然如果gc堆上的占用内存较高的对象是自定义的类,那么就可以直接查看相关的调用函数来分析可能的问题了

    用Windbg来分析.Net程序的dump

    标签:pool   解析   logs   命令   log   基本命令   技术   函数   ddr   

    热心网友 时间:2022-04-10 11:32

    1、Dump文件是进程的内存镜像,Win7上的mp文件一般保存C:\Windows\Minimp目录下,需要管理员权限才可以访问。2、要分析mp文件,需要安装windbg,在Windbg中,通过File→Open Crash Dump菜单可以打开mp文件进行分析,如下图所示:载入mp文件后,在windbg最下面的命令栏中输入:!analyze -v 进行分析即可。!表示是windbg的扩展命令,analyze是扩展的命令, -v是参数。
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    vivo闪电手柄没法一键连招 vivo闪电游戏手柄如何设置最佳_vivo闪电游戏手柄设置教程 switch跳舞的游戏叫什么 量子特攻怎么使用灌木 量子特攻量子魔方有什么用 量子技能介绍 量子特攻怎么换技能介绍_量子特攻怎么换技能是什么 量子特攻战斗中更换时装和机仆技能方法介绍 量子特攻如何设置快捷机仆技能_量子特攻设置快捷机仆技能方法介绍_百度... 换新显卡,显示器不亮!DVI-D无信号 怎么回事大佬棒棒忙? 求大佬带飞,电脑相关问题 北京一夜歌词万奶因是什么意思 求才子佳人帮在下根据《北京一夜》歌词,改编一首《南京一夜》歌词! 《One Night in 北京》这首歌是什麼意思? 有一首歌的歌词是什么外来北京,留下很多情,什么百花深处,这首歌叫什么? 电动车的防盗器怎么设置静音或小点声音 电动车防盗报警器 声音很吵,能设静音防盗的么? 求北京一夜歌词,要男女分明的,急用!!! 电动车防盗报警器 声音很吵,能设静音防盗的么 爱玛电动车防盗声音怎么调 新买的绿源电动车报警器为什么声音变的很小了,喇叭还是以前那样响怎么回事 各种宝石的区别? 电瓶车警报器可以调节吗? 求一本宝石鉴定的权威书籍或光盘? 电动车报警器进水声音小怎么维修 宝石学都学什么课程 魔兽世界宝石学和采矿怎么冲? 下雨后电动车报警器声音变小怎么办? 宝石鉴定与加工技术专业 关于电动车防盗器,下雨天,声音就大了,下雨过后,声音突然变小,怎么回事?该如何修理? 宝石学的简介 “菜市场的人真多呀!”开头,写几句话,要表现出人多哦! 快递退货了,但是又收到货了,商品想要留下,商家要我给钱,快递也要找我要钱,怎么办? 形形色色的买菜人可以用别的称呼吗? 单位要筹建一个新的健身房,健身房器材该如何配置? 超市买菜人拥挤抢光怎么写造句子? 卖家退货退款了,但是又发货了,快递送到家了,确认收货,还要付钱吗? 环境人群拥挤声音嘈杂的菜市场,人物贼眉鼠眼的惯犯,小偷卖菜的张大婶写... 190平方单位健身房配置方案职工健身房如何配置 买菜的人和买完菜还给自己买花的人意义有什么不同 之前去了家事业单位办事 发现了一个健身房 写着panaseima策划 小明的奶奶去买菜,卖菜的人,用一只断了尾巴的秤称菜,小明的奶奶不高兴了,说就这样的称要吃亏了,卖菜 不会买菜的人怎么买菜 健身房技术解决方案招投标文件 常买菜的朋友来看看 淘宝没有发货,退款了,但是收到快递 有品位的人是如何买菜的? 机关事业单位可以购买健身器材吗 请写一篇描述买菜的人的作文 健身房最佳方案 有在食堂买菜或做法的人吗?想问几个问题