物理地址扩展
物理地址扩展(PAE)是一项处理器功能,使 x86 处理器能够在支持 Windows 的版本上访问超过 4 GB 的物理内存。 基于 x86 的系统上运行的某些 32 位版本的 Windows Server 可以使用 PAE 访问最多 64 GB 或 128 GB 的物理内存,具体取决于处理器的物理地址大小。 有关详细信息,请参阅 windows 版本 内存限制。
Intel Itanium 和 x64 处理器体系结构可以本机访问超过 4 GB 的物理内存,因此不提供等效的 PAE。 PAE 仅由基于 x86 的系统上运行的 32 位版本的 Windows 使用。
使用 PAE,作系统从两级线性地址转换移动到三级地址转换。 与其将线性地址拆分为三个单独的字段用于编制内存表索引,而是拆分为四个单独的字段:一个 2 位位字段、两个 9 位位字段和一个对应于 Intel 体系结构(4 KB)实现的页面大小的 12 位字段。 PAE 模式下的页表条目(PTE)和页目录条目(PES)的大小从 32 位增加到 64 位。 其他位允许作系统 PTE 或 PDE 引用超过 4 GB 的物理内存。
在基于 x64 的系统上运行的 32 位 Windows 中,PAE 还支持多种高级系统和处理器功能,包括启用硬件 数据执行防护(DEP)、非统一内存访问(NUMA),以及能够在系统运行时向系统添加内存(热添加内存)。
PAE 不会更改进程可用的虚拟地址空间量。 在 32 位 Windows 中运行的每个进程仍限制为 4 GB 虚拟地址空间。
PAE 的系统支持
PAE 仅在基于 x86 的系统上运行的以下 32 位版本的 Windows 上受支持:
- Windows 7 (仅 32 位)
- Windows Server 2008 (仅 32 位)
- Windows Vista (仅 32 位)
- Windows Server 2003 (仅 32 位)
- Windows XP (仅 32 位)
启用 PAE
如果在支持硬件的 DEP 的计算机上启用 DEP,或者计算机配置为内存范围超过 4 GB 的热添加内存设备,则 Windows 会自动启用 PAE。 如果计算机不支持启用硬件的 DEP,或者未为内存范围内的热添加内存设备配置超过 4 GB,则必须显式启用 PAE。
若要显式启用 PAE,请使用以下 BCDEdit /set 命令设置 pae 启动项选项:
bcdedit /set [{ID}] pae ForceEnable
如果启用了 DEP,则无法禁用 PAE。 使用以下 BCDEdit /set 命令禁用 DEP 和 PAE:
bcdedit /set [{ID}] nx AlwaysOff
bcdedit /set [{ID}] pae ForceDisable
Windows Server 2003 和 Windows XP: 若要启用 PAE,请使用 boot.ini 文件中的 /PAE 开关。 若要禁用 PAE,请使用 /NOPAE 开关。 若要禁用 DEP,请使用 /EXECUTE 开关。
比较 PAE 和其他大型内存支持
PAE、4 千兆字节的优化(4GT)和 地址窗口扩展(AWE)提供不同的用途,可以彼此独立使用:
- PAE 允许作系统访问和使用超过 4 GB 的物理内存。
- 4GT 将进程可用的虚拟地址空间部分从 2 GB 增加到 3 GB。
- AWE 是一组 API,允许进程分配非分页物理内存,然后将此内存的某些部分动态映射到进程的虚拟地址空间。
使用 4GT 和 AWE 时,单个 32 位进程可以使用的物理内存量受地址空间(2 GB)的大小限制。 在这种情况下,已启用 PAE 的系统仍可以使用超过 4 GB 的 RAM 来同时运行多个进程或缓存内存中的文件数据。
4GT 可用于或不使用 PAE。 但是,某些版本的 Windows 会限制使用 4GT 时可以支持的最大物理内存量。 在此类系统上,启用 4GT 的启动会导致作系统忽略超出限制的任何内存。
AWE 不需要 PAE 或 4GT,但通常与 PAE 一起使用,从单个 32 位进程中分配超过 4 GB 的物理内存。
相关主题