2013-04-28 88 views

回答

3

PAE不需要36位(或更大)的物理地址。这允许软件使用PAE而不关心物理地址大小(并且不需要为某些CPU编写完全不同的分页代码 - 例如Intel Atom)。这也意味着只有PAE(和长模式)才支持的某些功能可用于没有36位(或更大)物理地址总线(特别是“不执行”或“执行禁用” “功能)。

重要的是不要混淆虚拟地址(软件使用的地址)和物理地址(CPU使用的地址,硬件等)。 PAE对虚拟地址没有影响,所有虚拟地址仍然只有32位。如果您访问32位(虚拟)地址处的内容,则CPU会使用查找表(页表,页面目录和页面目录指针表)将32位虚拟地址转换为36位物理地址。

4

是32位处理器上物理地址扩展所需的36位地址总线?

显然,我们实际上在使能或与32位地址总线,在CPU上支持PAE,因为你不能将能够在物理地址在以上2 访问任何毫无益处。

如果我使用位于具有36位地址的页面中的32位地址,会发生什么?

这个问题不太清楚。

当启用PAE时,虚拟地址保持32位。页表中的物理地址扩展到36位(通常,最低12位不存储在PDE和PTE中,因为4KB页在4KB地址边界上自然对齐,所以它们被视为0)。

如果你正在谈论PDE和PTE中的物理地址,没有人阻止你使用物理地址小于2 。