如何从地址表和十六进制值以及提供的虚拟内存中找到状态位?

问题描述 投票:0回答:0

我正在练习虚拟内存,我偶然发现了一个问题,内容如下:

我们将创建一个使用两级页面的简单大端机器 带

的桌子
  • 4KB 页面大小(类似于我们在课堂上学到的内容)
  • 4kb 页表
  • 这个处理器也使用 32 位地址

• 内存中的数据和页表根位于 0x10。

•PTE中两个级别的状态位都是12位,页面 表条目是 32 位长,其中页面偏移量后的 n 个最高有效位要么用作下一页的 ID(对于 第一级)或物理页码(对于第二级)。

• 获取页面第二层第一个条目的地址 表,我们的机器将取下一页的 ID。然后,它将此 ID 附加 m 个额外的零位,其中 m 是 页表大小所需的位数。例如,如果您的页表 大小为64字节,ID为5,m为6。所以,下一级页面为 这个 ID 在地址 0x140.

这是表格:

现在我有一个问题想回答,那就是:

虚拟地址 0x0000a000 的两个页表级别的状态位是什么?如果表格没有,请输入信息不足 没有提供足够的信息来获取实际地址。

我现在是虚拟内存的新手,看的视频都不够简洁,看不懂,请问有没有大佬帮忙解释下这个问题怎么解决?

我为没有发布任何尝试的答案而道歉,因为我真的不知道我应该做什么。任何帮助将不胜感激。

hex memory-address virtual-memory
© www.soinside.com 2019 - 2024. All rights reserved.