谁动了我的内存
作者:本站 来源:本站整理 发布时间:2008-6-9 6:19:50
五一期间,笔者对系统(E4300、4GB DDR2-667内存、nForce 570 SLI主板、8600GT)进行了升级-从原来的单8600GT升级到GF8600GT SLI系统,升级过程相当顺利,但系统原来的4GB内存变为3.25GB,此前系统一直都能正确识别4GB的内存容量。笔者发现当改用单显卡时,内存容量又神奇地恢复到4GB,难道是被NVIDIA独创的TC显存共享技术偷吃了?但显卡属性中的显存容量并没有增加——显卡吃掉内存居然不吐骨头!
经过搜查相关资料,笔者终于找到了答案——新增的显卡占用了内存MMIO地址,从而导致可用内存容量降低,在PC系统中,PCI设备地址范围包括了系统BIOS/芯片组/IO/PCI区域/VGA等,这些设备都是通过实际内存地址来通信的,该类地址被定义为内存映射IO空间(MMIO)。由于MMIO的存在,内存地址顶部大量空间被划作为各种系统资源的内存映射,因此当新增设备(8600GT显卡)占用的MMIO地址是4GB系统地址中部分物理内存所对应的地址时,被占用的对应地址的原物理内存部分就完全无效了,MMIO地址资源不足时最直接表现就是用户看到的系统属性标注可用物理内存缩水。
如果你在升级内存过程中,遇到不认4GB内存的问题,可以先尝试在BIOS中打开“MemoryRemap Feature”(注:有些为“Memory Hole Remapping”)选项(设置为Enable),一般在默认的Disable下是无法识别3GB以上内存容量的。如果经过以上设置,仍没有解决,那么多半问题是出在主板上了。后来笔者将主板BIOS升级到最新版本,问题解决了,估计是新版BIOS优化了各个设备的寻址空间,从而给操作系统留出余量。因此,出现类似问题,大家最好先升级到最新的BIOS。

文章评论 (评论内容只代表网友观点,与本站立场无关!)

您当前的位置: