内存位置如何在内存中分配?
我最近从四个1GB DIMM支架升级到四个2GB DIMM支架(服务器明确表示支持2GB DDR2 DIMM支架)。 但是,在装上4个全新的2GB的硬盘之后,机器不能启动,PC扬声器发出响亮的嘟嘟声,这可能表示DIMM棒有故障。 一次取下一根手柄并试图启动,我发现如果DIMM2中的RAM不存在,机器就会启动。 然后我运行了memtest86 +大约10%的通行证,6GB似乎没问题。
然后,我决定将DIMM3(工作)移动到DIMM2的插槽(尝试testingDIMM2插槽是否有故障),并且启动正常。 然后我尝试将有问题的DIMM放入DIMM3插槽。 令我惊讶的是,这次计算机启动,无论运行memtest86 +,它发现大约5%的通过〜15错误。 然而,我天真地认为错误在6144-8192 MB之间,或者至less全部局限于连续2048MB的RAM块。 相反,我发现内存错误遍布整个地点。 (例如,有些分组为〜500MB,有些分组在〜4500MB左右 – 我没有logging确切的位置)。
但是,然后我删除了DIMM3中的可疑DIMM,并重新memtest86 +。 在6GB内存上完成一个完整的传输,没有任何错误。 在这一点上,我相信,可疑的DIMM是有缺陷的 – 但我有点困惑的早期memtest86 +错误。
内存位置不只是连续分组? (例如,DIMM0为0-2048MB,DIMM1为2048-4096MB,…)或者是多分割(例如,DIMM0具有字节0,4,8,12; DIMM1具有字节1,5,9,13)? 或者一个错误的DIMM会在属于其他DIMM棒的位置产生内存错误?
没有人会回答你的问题,每个模型/架构可以是或者是大不相同的。 你通常可以在制造商的网站上find你的机器的细节,但对不起,没有“黄金法则”。
正如@ Chopper3所说,没有保证套接字到内存位置的映射 – 这取决于主板/内存pipe理单元的实现。 真正好的系统(IBM硬件)在故障组件旁边几乎没有闪烁的光,所以如果您可以让MemTest86生成本地IPMI /其他监视工具检测到的错误,则会指出错误的组件。 在我看来,这个特性本身就certificate了IBM硬件的价格:-)
回复:错误的可重复性,不幸的是,错误的内存通常会以不稳定的方式失败(今天很好,明天上午完全失败,到下午可以恢复正常)。 在一夜之间连续运行MemTest86 +或其他软件testing工具通常是排除错误的好方法,但是由于您已经知道哪个DIMM(可能)出现故障,因此您可以直接进行更换。