Operating system Can';不理解页面地址扩展的过程
我试图弄清楚页面地址扩展是如何工作的,并阅读了维基百科中的一些参考资料,最后的图片是PAE的经典结构。但我还是不明白为什么这能奏效 以下是我的问题Operating system Can';不理解页面地址扩展的过程,operating-system,Operating System,我试图弄清楚页面地址扩展是如何工作的,并阅读了维基百科中的一些参考资料,最后的图片是PAE的经典结构。但我还是不明白为什么这能奏效 以下是我的问题 Dir.pointer条目的大小是多少?32位 有人能解释一下PAE将32位虚拟地址映射到36位物理地址的细节吗 (Q1):每个目录指针条目是64位的,这些条目与页面目录条目和页面表条目大致共享相同的布局。大致上,这是因为尽管它共享布局,但保护和内存类型位的解释却截然不同 在经典的32位+PAE中,cr3寄存器包含第31..5位中第一个目录指针项的物
63 -- no execute ( this page cannot execute )
62..M -- must be zero (later ignored).
(M-1)..12 -- upper M-12 bits of physical address
11..0 -- protection, size and type bits.
M是lg(最大物理地址),它可以是运行时确定的值
(Q2):因此,当处理器找到对应于虚拟地址V的(4k)页表条目时,它会发出:
(v & 0xfff) | ((PTE (M-1)..12) << 12)
(v&0xfff)|((PTE(M-1)…12)
(v & 0xfffff) | ((PDE (-1)..20) << 20)