几年前,我的硬盘坏了,在它快要报废的时候,有人将它的克隆映像安装到新硬盘上。问题是,旧硬盘最终无法再工作,一些数据(我认为不到 100MB,共 250GB)无法挽回地丢失了。从那时起,我就遇到了一些 BSOD,主要是由于随机原因(松动的 RAM、驱动程序等),但一段时间以来,我一直遇到完全相同的问题。
BlueScreenViewer 告诉我,我遇到了由 ntoskrnl.exe 导致的 0x01a MEMORY_MANAGEMENT 崩溃。第一个参数始终是 41790,根据此https://msdn.microsoft.com/en-us/library/windows/hardware/ff557391%28v=vs.85%29.aspx意思是:“页表页已损坏。在 64 位版本的 Windows 上,参数 2 包含损坏的页表页的 PFN 地址。在 32 位版本的 Windows 上,参数 2 包含指向已使用的 PTE 数量的指针,参数 3 包含已使用的 PTE 数量。”事实上,第二个参数几乎总是相同的。
以下是最近发生的崩溃:(抱歉,有点混乱,我无法正确格式化它)
Dump File Crash Time Bug Check String Bug Check Code Parameter 1 Parameter 2 Parameter 3 Parameter 4 Caused By Driver Caused By Address File Description Product Name Company File Version Processor Crash Address Stack Address 1 Stack Address 2 Stack Address 3 Computer Name Full Path Processors Count Major Version Minor Version Dump File Size Dump File Time
061415-35100-01.dmp 14/06/2015 00:24 MEMORY_MANAGEMENT 0x0000001a 00000000`00041790 fffffa80`07a45fd0 00000000`0000ffff 00000000`00000000 dump_ataport.sys dump_ataport.sys+4fb4a40 x64 ntoskrnl.exe+748c0 C:\Windows\Minidump\061415-35100-01.dmp 8 15 7601 302.111 14/06/2015 00:26
061315-38657-01.dmp 13/06/2015 21:28 MEMORY_MANAGEMENT 0x0000001a 00000000`00041790 fffffa80`07a5c050 00000000`0000ffff 00000000`00000000 ntoskrnl.exe ntoskrnl.exe+748c0 NT Kernel & System Microsoft® Windows® Operating System Microsoft Corporation 6.1.7601.18869 (win7sp1_gdr.150525-0603) x64 ntoskrnl.exe+748c0 C:\Windows\Minidump\061315-38657-01.dmp 8 15 7601 302.047 13/06/2015 21:30
060715-40185-01.dmp 07/06/2015 19:53 MEMORY_MANAGEMENT 0x0000001a 00000000`00041790 fffffa80`07a5cf20 00000000`0000ffff 00000000`00000000 USBSTOR.SYS USBSTOR.SYS+57dfa40 USB Mass Storage Class Driver Microsoft® Windows® Operating System Microsoft Corporation 6.1.7601.17577 (win7sp1_gdr.110310-1504) x64 ntoskrnl.exe+72a40 C:\Windows\Minidump\060715-40185-01.dmp 8 15 7601 302.047 07/06/2015 19:55
050915-56113-01.dmp 08/05/2015 23:43 MEMORY_MANAGEMENT 0x0000001a 00000000`00061940 00000000`06e00000 00000000`00000000 00000000`00000000 ntoskrnl.exe ntoskrnl.exe+72a40 NT Kernel & System Microsoft® Windows® Operating System Microsoft Corporation 6.1.7601.18869 (win7sp1_gdr.150525-0603) x64 ntoskrnl.exe+72a40 C:\Windows\Minidump\050915-56113-01.dmp 8 15 7601 302.047 09/05/2015 00:10
我运行过很多恶意软件扫描程序,全部都清理干净。
当我运行 sfc /scannow 时,没有发现完整性违规。
但是当我运行 chkdsk /f 或 /r (我需要使用 /x,否则不会进行任何修复,即使重新启动)时会出现一些奇怪的事情:
1-我的电脑上总是有“4 KB 坏扇区”。
2- 这几乎是恒定的:“清理 152[* 或不同的数字,但接下来两个未使用的东西是相同的数字]文件 0x9 的索引 $SII 中未使用的索引条目。清除文件 0x9 的索引 $SDH 中 152 个未使用的索引条目。清除 152 个未使用的安全描述符。“
我对硬盘进行了一些测试,结果通过了。我运行了 HCI MemTest,RAM 似乎没有问题,但当它到达硬盘上记录的页面文件时,一些错误开始出现。Windows 内存诊断程序也发现我的 RAM 没有问题。
因此,这让我感到疑惑:我的 BSOD 是否可能是由旧 HDD 映像中的某些损坏文件(如 ntoskrnl.exe)引起的?如果是这样,我该如何修复这些文件?删除 ntoskrnl.exe 并重新安装是否安全或是一个好主意(假设我可以从另一台 Windows 机器中复制它)?是否可以建立新的 MFT 文件记录?
正如您所看到的,我不太精明,所以非常感谢您的帮助!
我的设置是 Windows 7 Ultimate x64、Core i7、12GB RAM、Nvidia GeForce GTX260,OS HDD 是 WD5000AVCS,另外还有 4 个 HDD(3 个是外部 USB 驱动器)
附言:我刚刚更新了我的 GPU 驱动程序,但我不认为这会有帮助
PS2:我从未进行过任何超频,并且我的 RAM 设置根据主板制造商的说法是正确的(英特尔对我的 RAM Kingstone 设置进行了一些测试),2 x 2GB 1333、2x 4GB 1333
编辑:我刚刚意识到的一件事是,上次崩溃时我正在运行很多程序……这可能是冲突问题吗?我会尝试同时运行其中一些程序,看看是否会发生 BSOD
答案1
超级用户告诉我这个老问题仍然收到很多浏览量。我认为最终对我有用的是在具有管理员权限的提示符下运行此命令:(chkdsk /x /b
请注意参数/b
而不是/r
)。我认为/b
重新映射坏扇区很重要。
四年过去了,我的硬盘依然运行良好。