实际上,这是另一个不符合逻辑的推断。
PAE(Physical Address Extensions,物理内存扩展)主要是用来提升处理器能够寻址的物理内存,和虚拟内存没有关系。在一台搭配了奔腾2处理器的32位系统上,使用PAE,可以使处理器能够从32位寻址提升到36位,也就是说理论上最大的物理内存可达64GB。
但是,指针类型的长度还是32位的,没有发生任何改变(对于一个32系统的处理器来说),这就意味着进程可用的虚拟地址空间依然是4GB。
通过启用PAE,页表和页目录条目的大小都增加了(用来适应新增的内存寻址能力),这也进一步地增加了为保存页表和页目录所需要的物理内存,因为每个也表都只是描述了它使用的内存的一半的空间。另外请注意,这会导致PAE和/3GB在某种程度上会相互冲突。
如果你同时打开PAE和/3GB,那么内核会将自身限制在16GB的物理内存中。那是因为内核中没有足够的地址空间来将所有必要的内存结构放入内核自己挤入的1GB内存(通过/3GB开关)中。
总结
物资匮乏的年代,唯有节衣缩食,才能存活下去。
我们需要珍惜今天的幸福生活。