多级页面table是否存储整个页面-table如果只使用一半?

Do multi-level page table store the entire page-table if only half is used?

假设我有一个包含 1024 个条目的 2 级页面 table。考虑到只使用了 3 个 2 级页面 table,其中一个是半空的,所以我有一个顶级页面-table,其中包含三个条目。

现在,我的页面 table 系统在我的 RAM 中占用了多少内存?

我是否必须每页存储 4 页 1024 * 32bits = 4kBytes,或者我只能存储我使用的内容? (3 + 1024 * 2 + 1024 * (1/2)) * 32 位?

您需要一个一级页面,其中填充了所有条目以指向二级页面。诀窍是共享不引用任何实际物理内存的二级页面。

如果你只使用2页二级条目,你应该总共需要4页来映射整个内存space。