位置: 编程技术 - 正文

理解Windows Vista和Windows 7中的崩溃转储文件(理解 成为 超越梗)

编辑:rootadmin
默认情况下,Windows配置为当系统发生崩溃时尝试自动抓取一个当前操作系统的状态信息。接下来我们将讨论系统故障,非应用程序失败。Dump选项可以通过控制面板中的系统工具来进行设置。我们打开系统属性—高级选项卡,找到启动和故障恢复,点击设置,我们就可以看到Dump文件的相关配置。当系统发生崩溃时,有3类Dump文件可以被捕获:

推荐整理分享理解Windows Vista和Windows 7中的崩溃转储文件(理解 成为 超越梗),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:理解万岁是什么意思,理解能力差是什么原因造成的,理解万岁是什么意思,理解能力差是什么原因造成的,理解的英文,理解词语的方法有哪些,理解的英文,理解的英文,内容如对您有帮助,希望把文章链接给更多的朋友!

完全内存转储:当崩溃发生时,将捕获整个物理内存的状态。此类转储文件大小为内存中页面文件大小+1MB的文件头。Windows NT4只支持完全内存转储,当然这也是Windows Server Systems的默认设置。 核心内存转储:当崩溃发生时,核心内存转储只捕获物理内存中内核态的页面文件读/写数据。这只是内核态的转储,并不包括用户态进程的页面。不过,由用户态进程页引起系统崩溃是不大可能的,通常都是由内核态引起。核心内存转储中包括:当前运行进程、线程和被加载的驱动等相关信息。核心内存转储文件大小=操作系统内核态内存占用大小+操作系统为驱动程序分配内存的大小。 小内存转储:小内存转储(又叫Mini-dump)是一个K的转储文件(位系统和Windows7里是K,VistaK),它包括:终止代码、参数和被加载的驱动列表。主要信息为崩溃时的当前进程、线程和内核堆。

注意:有的情况下我们需要进行完全内存转储,手动进行完全内存转储为程序停止响应的排错提供了最为丰富的信息。因为当程序Hang住时,我们需要查看用户态进程、死锁等等信息。不过,当你在选择捕获哪种Dump文件时,一定要考虑好捕获出来的文件大小。如上所述,完全内存转储文件大小会是在物理内存大小的基础上+1MB。(笔者8GB内存,再加1MB。恐怖啊……) 前面我们回顾了3种类型的Dump文件,实则在日常的工作中核心内存转储是我们系统崩溃和Bug检查时最常用到的。请记住,核心内存转储文件大小仅基于内核态内存占用和驱动内存占用。(在有更多内存的系统上,Dump文件过大是正常的。)目前我们还无法精准的计算核心内存转储文件大小,你可以尝试手动配置核心内存转储来查看页面文件是否足够大。对于设置最小的核心内存转储大小我们有一定的指导方针,但对于最大值目前还没办法:物理内存 最小页面文件 (Kernel Dump) < MB MB < 4GB MB < 8GB MB >= 8GB MB

如果你担心页面文件设置过小,无法很好的捕获核心转储,我们唯一的办法就是通过KB所描述的方式使用CrashOnCtrlScroll方法造成手动崩溃。系统重启之后,我们可以手工查看Dump文件大小。另一种方法是在启动分区上手动设置2GB+1MB的页面文件大小(位系统),这是因为位操作系统内核态最大地址空间就是2GB。

除了配置正确的页面文件大小之外,我们也需要确保有足够的磁盘空间让Dump文件能够被正确的写入。与页面文件用来捕获Dump不同,Dump文件可以被写入其它的本地分区。在保存多个Dump文件时,请取消选择“覆盖任何现有文件”。不过请记住,这会给剩余的磁盘空间造成很大的压力。

理解Windows Vista和Windows 7中的崩溃转储文件(理解 成为 超越梗)

下面我们来看Dump文件是如何被产生的。当系统启动时,会到注册表HKLMSystemCurrentControlSetControlCrashControl 读取崩溃转储选项。所有在图形界面所做的操作都会修改如下注册表值:

将事件写入系统日志=LogEvent 自动重新启动= AutoReboot 写入调试信息= CrashDumpEnabled 转储文件= DumpFile 覆盖任何现有文件= Overwrite

如果你的系统超过2GB内存,在图形界面中你将不会看到完全内存转储选项。其原因在KB中进行了描述。但我们可以通过将HKLMSystemCurrentControlSetControlCrashControl下的CrashDumpEnabled值设置为1来强制启用它(改这个值在图形界面中完全内存转储仍不会显示出来)。如果你需要完全内存转储来做更详尽的排错,也可以考虑使用Boot.ini中的MAXMEM开关将位操作系统所使用的内存限制在2GB或更少(可以参考KB),此时系统就会将完全内存转储选项显示来。

现在回到Dump文件如何被产生这个话题。一旦转储功能被启用,操作系统会自动写一个以“Dump_”开头的磁盘迷你端口驱动到启动分区,并校验与创建 Dump文件相关的所有组件。包括:磁盘迷你端口驱动、写入Dump文件的I/O管理函数和启动分区的页面文件。最终所得的校验结果会被保存起来,每当系统启动时KeBugCheck函数会重新进行校验并与之前的结果相比对。如果校验结果不匹配,将不会有Dump文件被写入磁盘(因为有破坏磁盘数据的危险);如果检验结果匹配,Dump信息会被写入已经被写到磁盘启动分区上的页面文件当中。文件系统会被完全绕过,因为它也有可能是造成崩溃的原因之一。当SMSS.EXE在启动过程中开启内存分页时,系统会仔细检查启动分区页面文件当中的信息。如果有崩溃信息,这部分页面文件就会被保护起来。如果启动过程中的所有或部分启动分区页面文件不可用,系统会提示虚拟内存过低(暂时)。启动进程执行完成之后WINLOGON.EXE会调用SAVEDUMP.EXE进程从页面文件中抽出崩溃信息,并将Dump文件写到磁盘上。

在Windows Server 上,某些过程可能会有不同,请参考KB。当Server启动之后,Windows会要求在启动分区上创建一个和物理内存相同大小的临时文件。如果磁盘空间不足,Dump还是会生成,不过会被系统缩减大小。在创建Dump操作过程的初期,会话管理子系统(SMSS.EXE)就会介入验证内存Dump信息是否有效。如果Dump信息有效,SMSS.EXE会将Dump文件重命名为Dumpxxx.tmp,进而存储Dumpxxx.tmp到启动分区并设置HKLMSystemCurrentControlSetControlCrashControlMachineCrash下的TempDestination和DumpFile值。SAVEDUMP.EXE便会读取这2个值,并在判定文件的有效性之后将Dumpxxx.tmp保存成Memory.dm

小改文件轻松破解 迅雷5.9新版会员专用皮肤免费用 迅雷5.9发布之后引入了会员功能,其中包含两款会员专用皮肤.告诉大家一个简单的办法,可以轻松让非会员免费使用会员皮肤.更新:可以修改参数以隐藏主

英文版Vista Home Premium/Basic转成简体中文版的方法 Ultimate(旗舰版)的Vista可以直接下载安装多语言用户界面包,但是非Ultimate版本的,包括各种Home版的要转换语言就没那么容易了,现在软媒/Vista之家团

RTM,RTW,GA等软件版本号详解 一直以来,对于新手而言,软件的版本号都是个比较困扰人的问题,什么Beta、RC,再来个RTM、RTW....头大了吧?这不,刚刚就有人被微软SP2的发布日程搞

标签: 理解 成为 超越梗

本文链接地址:https://www.jiuchutong.com/biancheng/352159.html 转载请保留说明!

上一篇:八步骤教你巧妙操作Windows Vista系统(技巧步骤)

下一篇:小改文件轻松破解 迅雷5.9新版会员专用皮肤免费用(修改文件软件免费下载)

  • 变更税务所怎么操作
  • 甲供材料的增值税是多少
  • 无偿使用场地涉及的问题
  • 新办企业发票核定及申领,选否行吗
  • 企业所得税不预缴年终汇算可以吗
  • 合并报表成本法和权益法区别
  • 住房补贴是不是编制才有
  • 延迟取得发票的原因
  • 医院 科室承包
  • 汇总缴纳增值税的三级公司怎么汇总备案
  • 企业支付员工一年多少钱
  • 财产转让所得税计算方法
  • 为什么要开增值税
  • 资本公积提取比例怎么算
  • 发票作废了还能认证吗
  • 蔬菜销售收入免增值税吗
  • 资产处置损益和营业外收支的区别和联系
  • 固定资产直接进费用违背什么
  • 充值销售技巧和话术总结
  • 代付租金委托书怎么写
  • 5000元可以买什么东西
  • 个体工商户减免房租政策2022年
  • 国内企业给国外企业开发票
  • 公司租赁汽车
  • 微软输入法打不出汉字只有拼音
  • 国库年终总结
  • 怎么通过mac地址访问设备
  • 用友结转所得税费用
  • 个人之间股权转让印花税怎么交
  • php __invoke
  • 新准则有哪些
  • php的session
  • 利润表利息费用怎么填
  • 卷积神经网络结构
  • php安装oci8
  • thinkphp extend
  • 交易性金融资产属于流动资产
  • 基于车联网
  • 关于眼中的世界的作文
  • bash详解
  • setl指令
  • 个人独资企业用企业资金进行个人消费
  • 一般纳税人补交印花税买卖合同
  • 印花税的会计处理方法
  • 如何查看发票是否作废
  • SQL Sever2008r2 数据库服务各种无法启动问题的解决办法(详解)
  • 一年内到期的非流动资产
  • 一般纳税人登记 核算地址
  • 个人独资企业法人可以发工资吗
  • 如何办理出口收款凭证
  • 进项税额转出为什么加到销项税额里
  • 收到上月已付款的材料
  • 资产负债表中应付职工薪酬是负数
  • 餐饮业可以开具免税发票吗
  • 企业管理费的计算基础
  • 其他业务收入与其他业务成本的关系
  • 商业企业购入商品
  • 如何在境外银行开户
  • ubuntu系统安装无线网卡驱动
  • sqlserver性能优化
  • sql server触发器的编写与使用
  • linux系统中的用户大体可分为三组
  • 自定义winre
  • windows 查看图片
  • vmstat命令
  • 电脑xp系统如何
  • win7系统设置鼠标灵敏度
  • linux修改22端口号
  • cocos studio
  • js与css有什么区别
  • xml文件网络传输
  • linux中执行.sh文件
  • dos内部命令大全
  • Unity3D游戏开发标准教程
  • 自定义标签的开发的3个步骤?
  • python中的字典与列表属于什么类型
  • unity 断点
  • JavaScript事件类型中UI事件详解
  • 企业代理申报还用自己申报吗
  • 上海电子税务平台开票不含税怎么改成含税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设