虚拟内存 - 计算页面表中的页数

时间:2015-08-11 12:55:15

标签: memory virtual page-tables

  • 虚拟地址空间为64位
  • 页面大小为64KB
  • 字大小为4字节

页面表中有多少页?

起初我想:

页面大小= 64KB = 2 ^ 16bytes,因此偏移量使用64位的16位 因此,剩下48位 - >页表中有2 ^ 48页 (我不知道在哪里使用有关单词大小的信息) 但是,正确的答案是有2 ^ 50页,这让我感到困惑..

然后我认为页面偏移量可能只有14位,因为字大小是4bytes = 2 ^ 2bytes。所以页面表中确实有2 ^ 50页。

我是对的吗?我能得到更好的解释吗?

1 个答案:

答案 0 :(得分:0)

每页使用64位中的14位,而不是16位,因为最小可寻址单位是4字节字(这有效地消除了所需数量的2位)。所以偏移量剩下的剩余50位。