请求分页管理系统中,假设某进程的页表内容,如下表所示: 页面大小为4 KB,一次内存盼访问时间是100 ns,一次快表(TLB)的访问时间是10 ns,处理一次缺页的平均时间为108 ns(已含更新TLB和页表的时间),进程的驻留集大小固定为2,采用

admin2014-12-08  34

问题 请求分页管理系统中,假设某进程的页表内容,如下表所示:

  页面大小为4 KB,一次内存盼访问时间是100 ns,一次快表(TLB)的访问时间是10 ns,处理一次缺页的平均时间为108 ns(已含更新TLB和页表的时间),进程的驻留集大小固定为2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设:
  ①TLB初始为空;
  ②地址转换时先访问TLB,若TLB未命中,再访问页表(忽略访问页表之后的TLB更新时间);
  ③有效位为0表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列2362H、1565H、25A5H,请问:
  (1)依次访问上述三个虚地址,各需多少时间?给出计算过程。
  (2)基于上述访问序列,虚地址1565H的物理地址是多少?请说明理由。

选项

答案(1)根据页式管理的工作原理,应先考虑页面大小,以便将页号和页内位移分解出来。页面大小为4 KB=212B,则得到页内位移占虚地址的低1 2位,页号占剩余高位。可得三个虚地址的页号P如下(十六进制的一位数字转换成4位二进制,因此,十六进制的低1.2位正好为页内位移,最高位为页号): [*] 2362H:页号P=2,有效位为1,存在内存中。先访问快表10 ns,因初始为空,不在快表中,因此,需要访问页表100 ns得到页框号,合成物理地址后访问主存100 ns,共计10 ns+100 ns+100 ns=210 ns。 1565H:页号P=1,有效位为0,不存在内存中。先访问快表10 ns落空,进行缺页中断处理108ns,合成物理地址后访问主存100 ns,共计10 ns+100 ns+108ns+100 ns≈108ns。 25A5H:页号P=2,有效位为1,存在内存中。访问快表,因第一次访问已将该页号放入快表,因此花费10 ns便可合成物理地址,访问主存100 ns,共计10 ns+100 ns=110 ns。 (2)当访问虚地址1565H时,产生缺页中断,合法驻留集为2,必须从页表中淘汰一个页面。根据题目的最近最少使用置换算法,应淘汰0号页面,因此1565H的对应页框号为101H。由此可得1565H的物理地址为101565H。

解析
转载请注明原文地址:https://kaotiyun.com/show/ZZxi777K
0

最新回复(0)