症状分析

由于工作原因,用户需要获得系统崩溃前的所有调试信息。但是用户发现他们打开XP系统“我的电脑”、“属性”、“高级”、 "启动和故障恢复" 、 "设置" 、 “写入调试信息”时不能选择“完全内存转储”。如图1。而正常情况下应该如图2所示。
1
图1
2
图2

 

原因分析

1. 由于计算机物理内存超过4GB,导致无法开启“完全内存转储”,这是微软设计成这样的。
2. 个人认为,如果系统分区采用的是FAT32的文件系统,而FAT32只支持单个文件最大4GB,如果调试文件超过4GB就没法创建了。
3. 一般说来,在超过4GB的机器上开启完全内存转储没什么意义,因为系统崩溃的时候,几个GB的数据无法一下子就存到硬盘,毕竟固态硬盘的速度目前最快的也只有几百M/S,普通硬盘则只有60多M/S。

 

解决方案

如果需要强制开启,可以通过修改注册表键值的方式:
1. 以管理员身份登录计算机后打开“注册表编辑器”。
2. 定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl,找到CrashDumpEnabled,把它修改为1。如图3。
3
图3
3. 重启计算机后就可以选择创建“完全内存转储”了。

 

补充说明

Q:内存转储是什么?
A内存转储是在系统在发生严重故障且重启之前那很短的宝贵时间里,将当时内存中的数据写入硬盘的调试文件中,以便之后查看文件,分析崩溃原因,找到解决办法。比如通过分析调试文件就可以知道电脑为什么蓝屏。