在页面大小为4KB的48位系统中,虚拟页码的长度是多少



在页面大小为4KB的32位系统中,其地址VA的页码PN是用PN = VA/4KB长20位得到的。
但是如果我们有一个48位的系统,页码仍然是20位长吗?

具体来说,我有一个虚拟地址的形式为0x5641ba0c7000,我想知道虚拟页码是5641ba0c7 (= 5641ba0c7000/4KB)还是5641b(20位)

通常情况下,虚拟页码将是除了在页面内给出偏移量的地址的低位位之外的所有内容。以4 KB页面(= 2 * * 12字节),抵消低12位,所以虚拟页码其余48-12 = 36位。在你的例子中是0x5641ba0c7。(这个数字可能会被进一步分解为索引页表的几个级别。)

关于20比特没有什么通用的;只是如果你有32位的虚拟地址,那么32-12=20,所以在这种情况下,高20位给出了页码。

最新更新