未识别内存支持 - 如何在32位Windows下完全使用4G或更多内存
如今内存的价格越来越低,因此越来越多的用户开始为计算机配备4G或更多的内存,以希望达到更快的速度。然而由于32位架构的限制,完全访问4G或更多物理内存需要有硬件支持:CPU支持物理地址扩展(PAE),北桥芯片支持内存重映射(Memory Remapping)(关于这两项请参考其它技术文档)。即使硬件已经满足条件,操作系统也有可能限制了大容量内存的完全使用。下表列出了32位Windows不同版本所支持的最大物理内存(开启PAE)。
| 操作系统 (32-bit) | 最大支持物理内存(开启PAE) |
| Windows 2000 Advanced Server | 8 GB of physical RAM |
| Windows 2000 Datacenter Server | 32 GB of physical RAM |
| Windows XP (all versions) | 4 GB of physical RAM* |
| Windows Server 2003 (and SP1), Standard Edition | 4 GB of physical RAM* |
| Windows Server 2003, Enterprise Edition | 32 GB of physical RAM |
| Windows Server 2003, Datacenter Edition | 64 GB of physical RAM |
| Windows Server 2003 SP1, Enterprise Edition | 64 GB of physical RAM |
| Windows Server 2003 SP1, Datacenter Edition | 128 GB of physical RAM |
* 物理地址空间大小限制在4G
VSuite Ramdisk 提供了“系统未识别内存支持”功能,帮助用户充分使用被系统“丢失”的物理内存。
以下详细介绍如何使用系统未识别内存。示例中的计算机安装了8GB的内存,操作系统为32位Windows XP。先通过Windows的任务管理器查看内存使用信息。可以看到,系统仅识别到3582MB,可用物理内存剩余2975MB。(注:以下示例中均使用 VSuite Ramdisk 服务器版)
步骤 1. 进入杂项页面,选中“启用系统未识别的内存”,开启这项功能。启用后,会在下面显示当前未识别内存的总容量。这里未识别内存的容量是4604MB。
如果计算机或操作系统不支持,这个选项则变灰色,无法选中。

步骤 2. 进入内存虚拟硬盘页面,选中“优先使用系统未识别内存”。选项旁边显示了当前可用的未识别内存容量和未识别内存总容量。用户可创建比可用未识别内存大或小的虚拟硬盘,如果虚拟硬盘的容量大小比可用未识别内存大,不足部分将占用系统识别的物理内存。这个例子中,我们使用全部的可用未识别内存。

步骤 3. 设置其它属性,点击“创建”按钮创建新的虚拟硬盘。(参考如何创建虚拟硬盘)
创建完成后,我们再次检查可用物理内存,发现是2963MB,几乎和创建之前的数值一致。这意味着新创建的虚拟硬盘并没有占用系统管理的内存。通过这种方式,系统未识别的那部分内存得到充分利用。
在虚拟硬盘创建后,用户可以修改属性以启用或禁用系统未识别内存。进入属性模式,可以看到虚拟硬盘使用的未识别内存大小。如果需要改为使用系统管理的内存,则去掉“优先使用系统未识别内存”选项的勾选,点击“修改”按钮。在计算机重启后,新的设置生效。
注意事项(重要)
1. 请先检查计算机硬件是否支持系统未识别内存特性。通常对于Intel芯片组,需要946系列芯片组或以上才支持,945系列芯片组或以下不支持。对于NVIDIA芯片组,需要nForce 550芯片组以后。
2. 确定操作系统已经启用PAE支持,否则软件会提示“您的计算机或操作系统不支持PAE特性”。请参考启用PAE支持。
3. 不要使用类似软件同时操作这部分内存,这可能会引起冲突。部分显卡驱动可能也会使用未识别内存,可以通过保留系统未识别内存的功能来避免冲突,参考未识别内存保留。
4. 如果开启了操作系统的休眠功能,请勿将系统页交换文件(pagefile.sys)放在由系统未识别内存生成的虚拟硬盘,否则可能导致系统从休眠状态恢复时蓝屏。不过可放在由系统可识别内存生成的虚拟硬盘。此外,用户需要启用未识别内存休眠支持。
5. 如果遇到开启未识别内存支持后,系统无法正常启动的情况,可以进入系统安全模式下恢复设置。(适用于 VSuite Ramdisk 的任何版本)

