不支持Flash

凡事应有度 浅谈4G内存系统对游戏的影响(2)

http://www.sina.com.cn 2007年05月24日 11:25  IT168.com

  导致4GB内存缩水的硬件原因

  简单说来,造成4GB内存缩水的原因主要可以归结为硬件和软件两种,其中硬件原因指的就是主板。在很多人的印象中,主板能够支持多大容量的内存是由主板上的内存槽数量决定的,这样的想法虽然有一定的逻辑但并不正确。事实上,真正决定主板支持内存容量大小的因素是芯片组可支配地址空间大小。这里所说的地址空间就是系统中所有存储器的编码范围,这里面既包括有内存编码,也包括了主板BIOS、显卡BIOS、显存以及其他PCI设备的存储器编码。

  以i945P主板为例,i945P芯片组只有32位地址总线,因此它对应的地址空间为4GB。表面上看似乎能够支持4GB容纳量的内存。但从下表中我们可以看到,芯片组支持的4GB地址空间中,有1MB分配给了DOS兼容存储区,1MB-2GB分配给了内存,而2GB-4GB的地址空间则优先分配给了PCI/PCI-E设备和BIOS、闪存区域,而这一区域也被Intel称作MMIO(存储器映射)区域。那么,内存容量缩水与地址空间、MMIO区域又有什么联系吗?

凡事应有度浅谈4G内存系统对游戏的影响(2)

4G内存缩水

  在i945P芯片组4GB的地址空间中,DOS兼容存储区占用的空间较小,对内存容量不会造成大的影响,但MMIO区域由于占用了大量的地址空间,势必会影响实际内存的使用——当用户使用3GB以下容量的内存时,内存地址与MMIO区域基本不会发生重叠,不会影响内存的正常使用;但用户使用4GB内存时,势必会与MMIO区域重叠,而此时系统会优先将空间分配给MMIO区域,那么重叠部分的内存将无法被系统正确识别,进而造成内存容量丢失。

  说得再简单一点,假设芯片组的地址空间是一个4L的水缸,而内存、DOS兼容存储区和MMIO区域则是一定体积的水。只有当水的体积小于或等于4L时,这些水才能够被完全容纳在水缸中,一旦水的体积之和超过了4L的容积,那么溢出部分自然不能被利用。由于i945系列以及以前推出的Intel平台芯片组仅支持4GB地址空间,因此这些芯片组都不能顺利支持4GB内存。而在Intel平台上,nForce 550及以前推出的芯片组同样有类似的问题,不能解除4GB地址空间的限制。

  经过以上介绍,相信大家已经基本了解了造成4GB内存缩水的硬件原因,那么,目前有哪些芯片组是能够顺利支持4GB内存的呢?在Intel平台上,Intel 965/975以及新推出的3系列芯片组都具有36位地址总线,地址空间达到了64GB,最大可支持8GB容量内存。而在AMD平台上,nForce 570/590以上级别的芯片组同样支持64GB地址空间和最大8GB内存。需要注意的是,虽然从规格上看这些芯片组似乎能够顺利支持4GB内存,但事实上在默认情况下,芯片组仍然不能解决MMIO区域占用系统内存的问题。这就需要借助到高端服务器领域的Memory Remapping(内存重映射)技术。

  比如当用户在965P主板上使用4GB内存时,位于4GB地址以下的MMIO区域仍然会占用部分内存空间,此时4GB的内存容量无法得到充分利用。通过内存重映射技术,我们可以将MMIO区域重新影射到4GB地址以上的空间,此时4GB以下地址将完全留给内存使用,保证所有内存都能够被系统正确识别。那么,我们应该如何开启内存重映射技术呢?一般说来,基于Intel 965/975、nForce 570/590及以上级别芯片组的主板在BIOS中都提供了类似“Memory Remapping Feature”这样的选项,大家只需设置为“Enable”即可启用此项功能。

[上一页] [1] [2] [3] [4] [5] [下一页]

本文导航:
·前言
·导致4GB内存缩水的硬件原因
·导致4GB内存缩水的软件原因
·4GB内存对游戏性能的影响
·总结

发表评论 _COUNT_条
爱问(iAsk.com)