二级页表分页存储需要目录页表数形象解释

在牛客看到的答案,很形象,分享出来

某计算机采用二级页表的分页存储管理方式,按字节编址,页面大小为1024B,每个页表项占2B,若逻辑地址空间的大小为 64K 个页面,则表示整个逻辑地址空间的页目录表中包含的表项的个数至
少为__128_____
在这里插入图片描述
在解决这个问题前,我们用类比的方式来举一个例子。

  1. 假设有一本书,这本书每一页固定大小,最多一页有 1000 个字(页面大小);
  2. 每一页对应有一个目录中的条目,这个条目用 2 个字表示(页表项大小);
  3. 那么我 一页纸 就可以写下 1000/2 = 500 个目录条目;
  4. 现在我整本书有 1000 页(逻辑地址空间大小),我们说了每一页对应一个目录条目,所以有 1000 个目录条目;
  5. 所以我需要 1000 个目录条目/ 500 个目录条目 = 2 页(注意前面说到了,一页可写 500 个条目。所以我需要 2 个页面来保存目录条目。

回到题目本身,对应的含义用黑体在上面标识出来了。
其计算过程如下:
页面大小 210B,页表项大小为 2B,所以一页可以写 210B/2B=29B 个页表项。
逻辑地址空间大小为 216 页,就是说需要 216 个与之对应的页表项,因此需要 216B/29B=27=128 个页面存放页表项。

PS:关于分页存储管理,你完全可以和现实中的书本结合理解,把一页的大小理解为书本一页固定写多少多少字,页表项就是书本前面的目录。

愿你心如花木,向阳而生

猜你喜欢

转载自blog.csdn.net/nbcsdn/article/details/104376545