0

有2个问题:

  1. 具有 32 位地址的计算机使用 2 级页表(9 位顶级和 11 位二级)。页面大小,地址空间中的页面数量以及应该驻留在内存中的最小页表大小是多少?

  2. 32 位虚拟地址空间计算机有 4 KB 页。文本和数据进入最低页(0-4095)。堆栈位于最高页面。如果计算机仍然使用传统页表和 2 级页表(PT1 和 PT2 各 10 位),需要多少条目?

THX的答案家伙....

4

1 回答 1

1
  1. 9 bit + 11 bit = 20 bit. 鉴于此,它允许 12 位偏移,这基本上是一个 4kb 页面。顶级页目录存储256个页表项,二级页表存储2048个页项。

  2. 从用户的角度来看,您需要 2 或 3 个页面(堆栈、代码+数据堆栈、代码、数据,如果您有不同的页面用于代码和数据,即数据页面具有不执行属性)。从内存管理器的角度来看,您需要多一页来存储页目录结构,并需要一两页来存储相应的页表结构。页目录的第一个条目指向保存代码页和数据页条目的页表页。页目录的最后一个条目指向保存堆栈页条目的页表。

希望这有帮助。

于 2012-06-18T10:46:21.657 回答