use*_*722 16 memory windows memory-management
我问这个问题是因为我遇到了内存问题(BSOD、MemTest 错误),在我将故障棒从 SLOT3 切换到 SLOT4(如我的主板上所标记)后,这些问题似乎已经停止。
Windows 是否倾向于根据主板如何决定映射内存,先使用 SLOT1,然后使用 SLOT2、SLOT3、SLOT4 等?例如,如果我有 4 个 2GB 的记忆棒,并且我在特定时刻使用的 RAM 不超过 2GB(比如我只是盯着我的桌面或听音乐),其他 3 个记忆棒是否保留Windows 仅使用第一根棒 (SLOT1) 时处于非活动状态?
Ton*_*nny 26
它不会那样工作。操作系统甚至不知道这些数字。
主板 (bios) 将条带组织成 1 个或多个内存块,然后移交给操作系统。顺序不一定按插槽编号的顺序排列。RAM 的 SLOT4 条带可能实际保存地址 0,并且最高地址位于 SLOT2 条带的末尾。
此外(多通道 RAM),插槽可能成对使用(或什至三元组),它们的内存交错使用:来自 SLOT1 的奇数内存行和来自 SLOT2 的偶数行。
并且让它变得更加复杂。任何现代操作系统都使用虚拟内存。如何在物理内存之上分配虚拟内存空间主要由 MMU(内存管理单元)处理,它是硬件(CPU 和/或北桥芯片,取决于我们正在谈论的特定 CPU)的一部分。MMU 如何混洗内存以将其呈现给操作系统可能会有很大差异。
更复杂的是,Windows 会将其使用范围扩展到整个 RAM 空间。将最低部分用于操作系统和中断,但驱动程序和其他硬件相关的东西(如视频缓冲区)通常在 RAM 空间的末尾分配,程序在中间的某个地方。
TL:DR:没有确定操作系统最终如何使用 RAM 插槽的一般规则。主板上的数字只是告诉用户必须按什么顺序填充 SLOTS。它们对操作系统没有任何意义。
在任何现代操作系统(不仅仅是 Windows)上,您都不能让操作系统避免使用部分物理 RAM 来解决问题。(就像物理硬盘通过映射坏块来做的那样。)您必须物理移除坏内存条或避免将好内存条放入坏插槽中。
并且找出哪个杆或插槽是坏的可能是一个主要问题,因为您无法从外部真正分辨出您的杆或插槽是坏的。
测试它的唯一方法是在已知良好的主板上一次一个地尝试棒。
Eug*_*eck 13
最有可能的是,移除和重新插入 DIMM 的行为解决了问题,而不是交换位置。
DIMM 触点携带的频率在 GHz 范围内,在这种情况下会发生非常奇怪的事情。触点通常镀金并不是随机的。“重新安装”DIMM 会将接触点移动几分之一毫米,并且可以轻松地将接触质量从“不够好”变为“刚刚好”
| 归档时间: |
|
| 查看次数: |
3581 次 |
| 最近记录: |