问题

问题

问题

客户端笔记本电脑出现蓝屏死机,代码为 0000002c。当 Windows XP 启动完成并尝试加载欢迎界面时,就会发生这种情况。

我目前所做的

  • 这不是硬件问题,因为我已经测试了 HD(Victoria Scan、Manufacture (Samsung) HD Diagnostic Tool)、RAM(Memtest86+ 24hr)和 CPU(stresstest),都没有错误。
  • 安全模式:BSOD 2c
  • Windows 修复:BSOD 2c(安装驱动程序时)
  • 在完全不同的笔记本电脑(不同的芯片组)中使用 HD,即使在虚拟环境中:BSOD 2c。
  • 用原始文件替换所有 logonui.exe 和 ntkrpamp.exe。

诊断

  • 如果我使用 Windows PE(Hirens Boot CD 15.1)启动笔记本电脑并想查看启动时加载了哪些程序和驱动程序(Sysinternals 的 autorun.exe),我会在 PE 环境中得到相同的 BSOD 2c。

如果需要,我可以上传最新的 minidump 的 *.dmp 文件。

小型转储

z:\TOOLS\windbg_6.12.0002.633_x86\debugger_x86>kd -y srv*c:\symbols*http://msdl.
microsoft.com/download/symbols-ic:\windows\i386-zz:\TMP\User\Mini052512-07。
动态规划

Microsoft (R) Windows 调试器版本 6.12.0002.633 X86
版权所有 (c) Microsoft Corporation。保留所有权利。


加载转储文件 [z:\TMP\User\Mini052512-07.dmp]
迷你内核转储文件:仅提供寄存器和堆栈跟踪

符号搜索路径为:srv*c:\symbols*http://msdl.microsoft.com/download/symbols

可执行文件搜索路径为:c:\windows\i386
Windows XP 内核版本 2600 (Service Pack 3) MP (4 个进程) 免费 x86 兼容

产品:WinNt,套件:TerminalServer SingleUserTS Personal
构建者:2600.xpsp.080413-2111
机器名称:
内核基址 = 0x804d7000 PsLoadedModuleList = 0x8055d720
调试会话时间:2012 年 5 月 25 日星期五 18:48:44.218(UTC + 2:00)
系统运行时间:0 天 0:19:39.765
加载内核符号
...........................................................
...........................................
加载用户符号
正在加载未加载的模块列表
...................
*******************************************************************************************
* *
* 错误检测分析 *
* *
*******************************************************************************************

使用!analyze -v获取详细的调试信息。

错误检查 C2,{43,c68a4000,0,0}

可能由以下原因造成:ntkrpamp.exe (nt!CmpFree+17)

后续:MachineOwner
---------

分析-v
*******************************************************************************************
* *
* 错误检测分析 *
* *
*******************************************************************************************

错误池调用者 (c2)
当前线程正在发出错误的池请求。通常这是由于错误的 IRQ
L 级或双重释放相同的分配等。
参数:
Arg1:00000043,尝试释放从未在任何池中的虚拟地址
Arg2:c68a4000,地址正在释放。
参数 3:00000000, 0
Arg4:00000000, 0

调试细节:
------------------


故障IP:
nt!CmpFree+17
8063beef 5d pop ebp

BUGCHECK_STR: 0xc2_43

客户崩溃次数:7

默认存储桶 ID:COMMON_SYSTEM_FAULT

进程名称:setup.exe

LAST_CONTROL_TRANSFER:从 80548c2d 到 804f9f33

堆栈文本:
ba2979e4 80548c2d 000000c2 00000043 c68a4000 nt!KeBugCheckEx+0x1b
ba297a24 8054b49a c68a4000 e1cc3640 e1c97000 nt!MiFreePoolPages+0x8b
ba297a64 8063beef c68a4000 00000000 ba297ad0 nt!ExFreePoolWithTag + 0x1ba
ba297a74 8063eaf6 c68a4000 00001000 00000000 nt!CmpFree+0x17
ba297ad0 8063eedb 9d308b60 00000000 00000000 nt!HvpRecoverData+0x3ec
ba297b1c 80630854 9d308b60 00000000 00000001 nt!HvMapHive+0x133
ba297b34 8063837f 9d308c01 00000005 00000000 nt!HvInitializeHive+0x416
ba297ba0 80625bcf ba297bdc 00000005 00000000 nt!CmpInitializeHive+0x26d
ba297bf8 8062ad61 ba297d04 00000000 ba297c64 nt!CmpInitHiveFromFile+0xa3
ba297c20 80631efa ba297ccc ba297c6c ba297c5c nt!CmpCmdHiveOpen+0x21
ba297cac 8062578a ba297ce4 ba297ccc 00000000 nt!CmLoadKey+0x90
ba297d40 80625994 0641a62c 0641a614 00000000 nt!NtLoadKey2+0x1fc
ba297d54 8054161c 0641a62c 0641a614 0641a658 nt!NtLoadKey+0x12
ba297d54 7c91e4f4 0641a62c 0641a614 0641a658 nt!KiFastCallEntry + 0xfc
警告:框架 IP 不在任何已知模块中。以下框架可能是错误的。
0641a658 00000000 00000000 00000000 00000000 0x7c91e4f4


堆栈命令:kb

关注IP:
nt!CmpFree+17
8063beef 5d pop ebp

符号堆栈索引: 3

符号名称:nt!CmpFree+17

FOLLOWUP_NAME:机器所有者

模块名称:nt

图像名称:ntkrpamp.exe

调试_FLR_IMAGE_时间戳:4802516a

FAILURE_BUCKET_ID: 0xc2_43_nt!CmpFree+17

BUCKET_ID: 0xc2_43_nt!CmpFree+17

后续:MachineOwner
---------

0:KD>;

那么,到底是什么原因导致了 BSOD?

答案1

致电表示HvpRecoverData注册表已损坏。恢复过程中的故障表明配置单元已损坏日志文件(根据 Windows Research Kernel 来源)。当我遇到此问题时,删除所有C:\Documents and Settings\<USERNAME>\NTUSER.DAT.LOG文件有帮助。在我的案例中,没有用户数据或设置在此过程中丢失。

相关内容