什么是页表,页面和页表条目?

时间:2016-02-26 00:53:32

标签: paging ram virtual-memory

我对这三件事情感到非常困惑,我一直试图理解这一点,这是一个很好的实力2小时而且没有运气。

Q值。 如果我有一个47位的虚拟地址空间,页面大小为16 KB,那么页表项占用8个字节。如果需要每个页表适合单个页面,那么映射虚拟地址空间需要多少级别的页表?

我知道页面表是什么,但页面表条目页面之间究竟有什么区别?在答案键中,它从这开始:

1页的页表包含2 ^ 11个PTE(x8字节),指向2 ^ 11页(寻址2 ^ 25字节)。有人可以向我解释2 ^ 11页来自哪里?

或多或少,我对页面的含义感到困惑,与页表条目的区别是什么。

1 个答案:

答案 0 :(得分:0)

将逻辑地址空间转换为PAGES数组。在您的情况下,页面是16KB或2 ^ 14字节。

PAGE TABLE包含从页面到物理PAGE FRAMES的映射,其中页面框架的大小与页面大小相同。

您的答案(但不是问题)表明页表条目是8个字节(2 ^ 3)。假设这是正确的,您可以将2 ^ 14/2 ^ 3 = 2 ^ 11页表条目放入一个页面中。

如果你有一个2 ^ 47位的地址空间,你需要2 ^ 47/2 ^ 14 = 2 ^ 33页表格来跨越整个地址空间。您需要2 ^ 33/2 ^ 11 = 2 ^ 22页的页面表条目。

此问题假定使用嵌套页表。

(2 ^ 11)^ 2 = 2 ^ 22

然后您需要两个级别的页表。

整个问题相当愚蠢,做作,并不能反映现实世界。我无法相信以这种方式教授操作系统。