最近,我在处理自己的事情(基本的 Microsoft Office 程序/正常浏览/编程)时开始不断出现 BSOD(例如 BAD_POOL_HEADER,然后是 DRIVER_OVERRAN_STACK_BUFFER,现在是 SYSTEM_SERVICE_EXCEPTION)。有一次没有蓝屏,但出现了卡屏。解决这个问题的唯一方法是强制重启我的笔记本电脑。
有人建议我尝试使用 Windows 本身提供的内存诊断工具来查看硬件是否存在问题,但报告称内存没有问题。我sfc /scannow
也试过了,但没有任何完整性违规。之前尝试过更新所有驱动程序,但错误仍然发生。
- 我可能会尝试全新安装 Windows,看看是否能解决问题。不太确定这样做是否可行。
我尝试分析最新的小型转储,结果显示了这一点。(我在进行系统检查时意外删除了早期版本):
Windows 8 内核版本 9600 MP (4 个进程) 免费 x64 产品:WinNt,套件:TerminalServer SingleUserTS Personal 构建者:9600.18090.amd64fre.winblue_ltsb.151014-0600 机器名称: 内核基址 = 0xfffff803`0f47a000 PsLoadedModuleList = 0xfffff803`0f74e630 调试会话时间:2015 年 11 月 23 日星期一 07:55:58.847(UTC - 5:00) 系统运行时间:0 天 7:20:06.694 ******************************************************************************************* * * * 错误检测分析 * * * ******************************************************************************************* SYSTEM_SERVICE_EXCEPTION (3b) 执行系统服务例程时发生异常。 参数: Arg1:00000000c0000005,导致错误检查的异常代码 Arg2:fffff8030f4d4d68,导致错误检查的指令地址 Arg3:ffffd000c144d700,导致错误检查的异常的上下文记录的地址 Arg4:0000000000000000,零。 调试细节: ------------------ TRIAGER:无法打开分类文件:e:\dump_analysis\program\triage\modclass.ini,错误 2 EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - “0x%08lx”处的指令引用了“0x%08lx”处的内存。该内存不能是“%s”。 故障IP: nt!ObReferenceObjectSafeWithTag+c fffff803`0f4d4d68 498b02 mov rax,qword ptr [r10] 上下文:ffffd000c144d700——(.cxr 0xffffd000c144d700) rax=ffffe000b7666080 rbx=790b845bb249fcc8 rcx=790b845bb249f640 rdx=000000006e457350 rsi=ffffe000b79c7700 rdi=790b845bb249f640 rip=fffff8030f4d4d68 rsp=ffffd000c144e130 rbp=ffffd000c144eb80 r8=0000000000000000 r9=7fffe000b7af4348 r10=790b845bb249f610 r11=7ffffffffffffffc r12=ffffe000b7af44f0 r13=0000000000000011 r14=ffffe000b7af4348 r15=0000000000000000 iopl=0 nv up ei ng nz na po nc cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00010286 nt!ObReferenceObjectSafeWithTag + 0xc: fffff803`0f4d4d68 498b02 mov rax,qword ptr [r10] ds:002b:790b845b`b249f610=???????????????? 重置默认范围 客户崩溃次数:1 默认存储桶 ID:WIN8_DRIVER_FAULT BUGCHECK_STR: 0x3B 进程名称:vmware-authd.e 当前 IRQL: 0 LAST_CONTROL_TRANSFER:从 fffff8030f822892 到 fffff8030f4d4d68 堆栈文本: ffffd000`c144e130 fffff803`0f822892 : ffffd000`c144eb80 00000000`00000000 ffffe000`b7af4348 00000000`00000000 : nt!ObReferenceObjectSafeWithTag+0xc ffffd000`c144e160 fffff803`0f83f041 : 00000000`00000080 ffffd000`0002dc90 00000000`00000000 00000000`00000000 : nt!ExpGetProcessInformation+0x432 ffffd000`c144e400 fffff803`0f83e679 : 00000000`029b0090 00000000`00000004 00000000`00000005 ffffffff`fd050f80 : nt!ExpQuerySystemInformation+0x975 ffffd000`c144eac0 fffff803`0f5d40b3 : ffffe000`b79c7700 00000000`00000000 ffffd000`c144ead8 ffffe000`b79c96d0 : nt!NtQuerySystemInformation+0x49 ffffd000`c144eb00 00007fff`1c8b153a : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiSystemServiceCopyEnd+0x13 00000000`02cae2b8 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : 0x7fff`1c8b153a 关注IP: nt!ObReferenceObjectSafeWithTag+c fffff803`0f4d4d68 498b02 mov rax,qword ptr [r10] 符号堆栈索引: 0 符号名称:nt!ObReferenceObjectSafeWithTag+c FOLLOWUP_NAME:机器所有者 模块名称:nt 图像名称:ntkrnlmp.exe 调试_FLR_IMAGE_时间戳:561e5da4 堆栈命令:.cxr 0xffffd000c144d700;kb FAILURE_BUCKET_ID: X64_0x3B_nt!ObReferenceObjectSafeWithTag+c BUCKET_ID: X64_0x3B_nt!ObReferenceObjectSafeWithTag+c 后续:MachineOwner ---------
我想知道是否有人可以帮助进一步分析上述小型转储并找出根本原因。我怀疑我的硬件存在一些问题。(但由于它是超极本,我无法删除它们。可能不得不把它带到商店。)
这是小型转储的原始文件:https://www.dropbox.com/s/ypdvzwma9nlztg7/112315-4468-01.dmp?dl=0
更新 我已经卸载了 VMWare。刚刚又收到一次 BSOD,这次是 DRIVER_IRQL_NOT_LESS_OR_EQUAL。
Windows 8 内核版本 9600 MP (4 个进程) 免费 x64 产品:WinNt,套件:TerminalServer SingleUserTS Personal 构建者:9600.18090.amd64fre.winblue_ltsb.151014-0600 机器名称: 内核基址 = 0xfffff802`85212000 PsLoadedModuleList = 0xfffff802`854e6630 调试会话时间:2015 年 11 月 23 日星期一 23:54:12.110(UTC - 5:00) 系统运行时间:0 天 15:24:23.957 ******************************************************************************************* * * * 错误检测分析 * * * ******************************************************************************************* DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1) 尝试访问可分页(或完全无效)的地址 中断请求级别 (IRQL) 过高。这通常是 由于驱动程序使用不正确的地址而导致的。 如果内核调试器可用,则获取堆栈回溯。 参数: Arg1:fffff802107d6340,引用的内存 Arg2:000000000000000d,IRQL Arg3:00000000000000008,值 0 = 读操作,1 = 写操作 Arg4:fffff802107d6340,引用内存的地址 调试细节: ------------------ TRIAGER:无法打开分类文件:e:\dump_analysis\program\triage\modclass.ini,错误 2 READ_ADDRESS:fffff802854d4020:无法获取特殊池信息 fffff802854d4020:无法获取特殊池信息 无法获取 nt!MmNonPagedPoolStart 无法获取 nt!MmSizeOfNonPagedPoolInBytes fffff802107d6340 当前 IRQL: d 故障IP: +0 fffff802`107d6340 ?? ??? 客户崩溃次数:1 默认存储桶 ID:WIN8_DRIVER_FAULT BUGCHECK_STR:AV 进程名称:系统 TRAP_FRAME:ffffd001f8cfe930——(.trap 0xffffd001f8cfe930) 注意:陷阱框架不包含所有寄存器。 一些寄存器值可能为零或者不正确。 rax=0000000000000001 rbx=0000000000000000 rcx=fffff802859f4e00 rdx=000027ef00000000 rsi=00000000000000000 rdi=00000000000000000 rip=fffff802107d6340 rsp=ffffd001f8cfeac8 rbp=ffffd001f8cfeb50 r8=00000000002048c6 r9=fffff80285512f80 r10=0000000000000001 r11=fffff8028556f910 r12=0000000000000000 r13=0000000000000000 r14=0000000000000000 r15=0000000000000000 iopl=0 nv 新西兰 na pe nc fffff802`107d6340 ?? ??? 重置默认范围 LAST_CONTROL_TRANSFER:从 fffff8028536c3e9 到 fffff802853608a0 失败的指令地址: +0 fffff802`107d6340 ?? ??? 堆栈文本: ffffd001`f8cfe7e8 fffff802`8536c3e9 : 00000000`0000000a fffff802`107d6340 00000000`0000000d 00000000`00000008 : nt!KeBugCheckEx ffffd001`f8cfe7f0 fffff802`8536ac3a : 00000000`00000008 ffffd001`f8cea180 00000000`20000000 ffffd001`f8cfeaf8 : nt!KiBugCheckDispatch+0x69 ffffd001`f8cfe930 fffff802`107d6340 : fffff802`8536211c ffffe001`3c37a000 00000000`00000001 ffffe001`3c37a000 : nt!KiPageFault+0x23a ffffd001`f8cfeac8 fffff802`8536211c : ffffe001`3c37a000 00000000`00000001 ffffe001`3c37a000 ffffd001`f8cea180 : 0xfffff802`107d6340 ffffd001`f8cfead0 fffff802`853643c2 : ffffd001`f8cea180 ffffd001`f8cea180 ffffd001`f8cf62c0 00000000`00000001 : nt!KiInterruptDispatchLBControl+0x12c ffffd001`f8cfec60 00000000`00000000 : ffffd001`f8cff000 ffffd001`f8cf9000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x32 堆栈命令:kb 关注IP: nt!KiPageFault+23a fffff802`8536ac3a 440f20c0 mov rax,cr8 符号堆栈索引: 2 符号名称:nt!KiPageFault+23a FOLLOWUP_NAME:机器所有者 模块名称:nt 图像名称:ntkrnlmp.exe 调试_FLR_IMAGE_时间戳:561e5da4 FAILURE_BUCKET_ID: X64_AV_CODE_AV_BAD_IP_nt!KiPageFault+23a BUCKET_ID:X64_AV_CODE_AV_BAD_IP_nt!KiPageFault+23a 后续:MachineOwner ---------
小型转储链接:https://www.dropbox.com/s/udf9ke81gt3bkce/112415-4421-01.dmp?dl=0
我的笔记本电脑已经用电池供电运行了好几个小时,直到我决定插入适配器给它充电。大约 10 分钟后,出现了 BSOD。这可能是我的适配器出了问题吗?我刚想起来几天前曾发生过一次雷击,在将适配器插入笔记本电脑的充电孔时可以看到火花。(但插座没有打开。)
更新(再次)。刚刚快速进行了 memtest86+ 大约一个多小时。两个 RAM 插槽(每个 2GB)均未出现错误,两次测试均通过。进行了磁盘错误检查,未发现任何错误。
更新 IRQL_NOT_LESS_OR_EQUAL的minidump分析:
Windows 8 内核版本 9600 MP (4 个进程) 免费 x64 产品:WinNt,套件:TerminalServer SingleUserTS Personal 构建者:9600.18090.amd64fre.winblue_ltsb.151014-0600 机器名称: 内核基址 = 0xfffff800`30478000 PsLoadedModuleList = 0xfffff800`3074c630 调试会话时间:2015 年 11 月 24 日星期二 02:16:20.080(UTC - 5:00) 系统运行时间:0 天 0:11:11.927 ******************************************************************************************* * * * 错误检测分析 * * * ******************************************************************************************* IRQL_NOT_LESS_OR_EQUAL (一) 尝试访问可分页(或完全无效)的地址 中断请求级别 (IRQL) 过高。这通常是 由于驱动程序使用不正确的地址而导致的。 如果有内核调试器可用,则获取堆栈回溯。 参数: Arg1:00000000000000007,引用的内存 Arg2:0000000000000002,IRQL Arg3:0000000000000000,位域: 位 0 :值 0 = 读操作,1 = 写操作 位 3 :值 0 = 不是执行操作,1 = 执行操作(仅在支持此级别状态的芯片上) Arg4:fffff800304e5622,引用内存的地址 调试细节: ------------------ TRIAGER:无法打开分类文件:e:\dump_analysis\program\triage\modclass.ini,错误 2 READ_ADDRESS:fffff8003073a020:无法获取特殊池信息 fffff8003073a020:无法获取特殊池信息 无法获取 nt!MmNonPagedPoolStart 无法获取 nt!MmSizeOfNonPagedPoolInBytes 0000000000000007 当前 IRQL: 2 故障IP: nt!MiInsertAndUnlockStandbyPages+186 fffff800`304e5622 448a4558 mov r8b,字节指针[rbp+58h] 客户崩溃次数:1 默认存储桶 ID:WIN8_DRIVER_FAULT BUGCHECK_STR:AV 进程名称: svchost.exe TRAP_FRAME:ffffd001be7743f0——(.trap 0xffffd001be7743f0) 注意:陷阱框架不包含所有寄存器。 一些寄存器值可能为零或者不正确。 rax=ffffd001be774540 rbx=00000000000000000 rcx=ffffd001be774540 rdx=fffffa8002677c80 rsi=0000000000000000 rdi=0000000000000000 rip=fffff800304e5622 rsp=ffffd001be774580 rbp=ffffd001be7745d0 r8=000000c000000000 r9=fffffa8001ce28b0 r10=000000000009a0d9 r11=00000000000000f r12=0000000000000000 r13=0000000000000000 r14=0000000000000000 r15=0000000000000000 iopl=0 nv 向上 ei pl zr na po nc nt!MiInsertAndUnlockStandbyPages + 0x186: fffff800`304e5622 448a4558 mov r8b,字节指针[rbp+58h] ss:ffffd001`be774628=02 重置默认范围 LAST_CONTROL_TRANSFER:从 fffff800305d23e9 到 fffff800305c68a0 堆栈文本: ffffd001`be7742a8 fffff800`305d23e9 : 00000000`0000000a 00000000`00000007 00000000`00000002 00000000`00000000 : nt!KeBugCheckEx ffffd001`be7742b0 fffff800`305d0c3a : 00000000`00000000 00000000`00000000 ffffd001`be774400 ffffd001`00000001 : nt!KiBugCheckDispatch+0x69 ffffd001`be7743f0 fffff800`304e5622 : 00000000`00000000 ffffd001`be7746f0 00000000`00000007 fffffa80`029334f0 : nt!KiPageFault+0x23a ffffd001`be774580 fffff800`304e4397 : 00000000`00000000 00000000`00000000 ffffe001`a9c2e760 00000168`424e6f02 : nt!MiInsertAndUnlockStandbyPages+0x186 ffffd001`be774610 fffff800`304e3d31 : 00000000`00000000 ffffd001`be7748f8 ffffe001`abc77a98 00000000`00000000 : nt!MiFinishHardFault+0x497 ffffd001`be774790 fffff800`304e5dec : 00000000`00000003 ffffd001`be7748f8 ffffe001`abc77a98 ffffd001`00000000 : nt!MiWaitForInPageComplete+0x27d ffffd001`be774880 fffff800`304cf91a : ffffe001`abc77a98 ffffe001`ad9ee880 00000000`00000000 ffffd001`be7749f0 : nt!MiIssueHardFault+0x184 ffffd001`be774940 fffff800`305d0b2f : 00000000`00000000 00000000`00000000 00000067`da280701 00007fff`5bab4950 : nt!MmAccessFault+0x5ba ffffd001`be774b00 00007fff`5b80ecae : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiPageFault+0x12f 00000067`da3fe940 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : 0x7fff`5b80ecae 堆栈命令:kb 关注IP: nt!MiInsertAndUnlockStandbyPages+186 fffff800`304e5622 448a4558 mov r8b,字节指针[rbp+58h] 符号堆栈索引: 3 符号名称:nt!MiInsertAndUnlockStandbyPages+186 FOLLOWUP_NAME:机器所有者 模块名称:nt 调试_FLR_IMAGE_时间戳:561e5da4 IMAGE_NAME:内存损坏 FAILURE_BUCKET_ID: X64_AV_nt!MiInsertAndUnlockStandbyPages+186 BUCKET_ID:X64_AV_nt!MiInsertAndUnlockStandbyPages+186 后续:MachineOwner ---------
我的系统规格:
操作系统:Windows 8.1 64 位;
处理器:英特尔酷睿 i5 4200U @ 1.60GHz;
内存:4.00GB 双通道 DDR3 @ 798MHz;
主板:三星电子有限公司 NP940X3G-K06US(SOCKET 0);
显卡:通用 PnP 显示器(1600x900@60Hz)和英特尔高清显卡系列(三星);
存储:119GB 东芝 THNSNH128G8NT(SSD);
无光驱。
非常感谢您的帮助!谢谢。
答案1
确保您的驱动程序都是最新的,特别是您的图形处理器驱动程序。如果失败,我认为重新安装 Windows 将是解决 BSOD 的下一步。如果重新安装 Windows 无法解决问题,那么很可能是某种硬件问题。