考虑执行程序的以下页表
虚拟页面#:0 1 2 3 4 5
页框#:8 3 9 x 0 1
该程序生成32位虚拟地址,每页包含512个字。该程序生成以下虚拟地址1749.它映射到
的物理地址是什么答案 0 :(得分:2)
首先确定该地址所属的虚拟页面,该虚拟页面的偏移量,然后使用您的页面表查找等效的物理地址。
假设虚拟地址空间是线性的,没有空洞,则可以通过除以页面大小(在您的情况下为512)来完成从地址到页面的转换。 页面内的偏移量是虚拟地址和虚拟页面起始地址之间的差异。
在上面的示例中,虚拟页面将是第3页,偏移量为213。
然后,在页面表中查找与虚拟页面3对应的物理页面。这是x
。因此,物理地址将是(页面开始的x
+页面偏移的物理地址),即(页面X的开头)+213。
页面X的开头,再次假设没有孔的线性映射将是(页面大小* x
)。
所以物理地址是:
(page_size * x) + offset
下面:
(512 * x) + 213