3级页表
哪一层包含页面的偏移量?
每个级别的页面大小是否相同或不同?
如果第二级和第三级页表的大小为2 ^ 25字节。每个包含2 ^ 9个条目。页表条目的大小为4个字节。其中使用(2 ^ 25-2 ^ 9 * 4)B。
如何使用它,或者将其浪费掉?
4级页表
哪个图可以阐明以下内容的清晰视图:
MMU
页表
页表条目
虚拟地址
物理地址?
最佳答案
哪个级别包含页面的偏移量?
页面不负责补偿。
让我们举个例子,它可以帮助您理解:
32位地址空间
页面大小4096字节
2 ^ 32 = 4 GB虚拟内存
要引用页面的每个字节,我们将需要log(4096)= 12位。
现在我们需要计算不同页面的数量,即4GB / 4KB = 1M页面。 1M是2 ^ 20个不同的页面。我们需要20位引用每个页面。
让我们做一个2级页面表。外部的也称为页面目录将具有2 ^ 10个条目,页面表上的每个条目都指向2 ^ 10个条目。
10位将标记PGDIR中指向页表的条目,访问页表后,我们将使用接下来的10位查找包含物理帧数的条目。
每当CPU运行命令时,它将使用前20位查找帧,并将使用最后12位作为该页面内的参考。
页表中的每个条目都有32位,前20位用于引用物理帧,后12位是用于告诉谁可以read/write
的标志...
关于linux - 多级页表概念,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43393342/