我最近为某人组装了一台新电脑。一开始一切似乎都很好,但当我安装操作系统时(尝试了 Windows XP 和 Windows 7),两个安装程序都失败了。XP 失败并出现 BSOD,Windows 7 只是说它无法读取某些文件并且磁盘可能已损坏,尽管有一次它也出现了 BSOD。
我决定下一步就是运行 Memtest86+,所以我启动了它并让它运行了一段时间。我观察了大约 5 分钟,没有报告任何错误,但 45 分钟到一个小时后我回来时,它报告了超过 15,000 个错误。我重新打开它并移除/重新安装 RAM。我甚至将它们放在另一组 DIMM 中(双通道,总共 4 个 DIMM)。
重新启动后,Windows 7 安装成功,运行正常。我以为“问题解决了”,但现在,大约一天后,系统又回到了 BSODing。我还没有再次在其上运行 Memtest86+(没有时间),但我怀疑会发生同样的事情。
我买的内存有问题吗?我还需要做其他测试来确认问题出在哪里吗?
答案1
当 MemTest86 失败时,可以相当肯定地说存在硬件故障。RAM 是最有可能的罪魁祸首,但在极少数情况下,还可能存在其他一些原因。我将按可能性递减顺序列出这些原因:
- RAM - 是的,RAM 可能有问题。至少 95% 的情况下答案都是这样的。
- 电源 - RAM 操作对电源波动相当敏感。故障的 PS 可能会产生各种奇怪的影响。唯一真正的测试是换上已知良好的 PS,并拥有大量额外容量。
- 主板 - 主板将所有这些组件连接在一起,导致许多可能的故障点。不过,主板问题与电源问题一样难以诊断。
- CPU - 如果您的 CPU 出现问题,您可能会看到其他问题。也就是说,现代 CPU 内置了内存控制器,因此内存错误可能是 CPU 出现问题的结果。运行 CPU 压力测试是找出这些问题的一种相当可靠的方法。
答案2
如果 BIOS 中的内存时序错误,Memtest86 也会报告错误。如果您修改了默认时序,或者模块中嵌入的 SPD 值不正确,或者 BIOS 对 SPD 值的解释有误,则可能会发生这种情况。我曾经遇到过后者。BIOS 更新解决了该问题,因此我建议您在更换硬件之前尝试一下。
答案3
系统中的组件之间也可能存在兼容性问题,即其他系统中没有任何单独组件出现故障,但所有特定组件组装在一起时却出现故障。
答案4
在某些较旧的机器类型(在 Socket 7 时代的系统上肯定见过这种行为)以及较旧的 memtest 版本上,L2/L3 缓存的问题(在最坏的情况下您可能会禁用它,但性能会受到影响)可能会被误解为 RAM 错误。