1、 请求分页管理系统中,假设某进程的页表内容如下表所示。页面大小为4KB,一次内存的访问时间是100ns,一次快表(TLB)的访问时间是10ns,处理一次缺页的平均时间是108ns(已含更新TLB和页表的时间),进程的驻留集大小固定为2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设①TLB初始为空;②地址转换时先访问TLB,若TLB未命中,再访问页表(忽略访问页表之后的TLB更新时间);③有效位为0表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列2362H、1565H、25A5H,请问:
(1)依次访问上述三个虚地址,各需多少时间?给出计算过程。
页号 |
页框(Page Frame)号 |
有效位(存在位) |
0 |
101H |
1 |
1 |
— |
0 |
2 |
254H |
1 |
(2)基于上述访问序列,虚地址1565H的物理地址是多少?请说明理由。
答案(1)
根据页式管理工作原理,应先考虑页面大小,以便将页号和页内位移分解出来。页面大小为4KB,即212,则得到页内位移占虚地址12位,页号占剩余高位。可得三个虚地址的页号P如下:
2362H: P=2,访问块表10ns,因初始为空,访问页表100ns得到页框号,合成物理地址后访问主存100ns,共计10ns+100ns+100ns=210ns。
1565H:P=1,访问块表10ns,落空,访问页表100ns,落空,进行缺页中断处理108ns,合成物理地址后访问主存100ns,共计10ns+100ns+108ns+100ns=318n。
25A5H:P=2,访问块表,因第一次访问已将该页号放入块表,因此花费10ns便可合成物理地址,访主存100ns,共计10ns+100ns=110ns。
(2)当访问虚地址1565H时,产生缺页中断,合法驻留集为2,必须从页表中淘汰一个页面,根据题目的置换算法,应淘汰0号页面,因此1565H的对应页框号为101H。由此可得1565H物理地址为101565H。
2.现有三名学生s1,s2和s3上机实习,程序和数据都存放在同一磁盘上。若三人编写的程序分别为P1,P2和P3,要求这三个学生用自编的程序调用同一个数据文件A进行运算。请问:(1)若文件A作为共享文件,系统应采用何种目录结构?画出示意图。(2)若这三位学生不约而同地把自己的程序名都起为P,利用(1)答案中的目录结构能否满足要求?(3)针对(2)的要求,简要说明系统如何为每个学生索取他们的程序和数据?
答.(1)系统采用二级目录结构就能满足需要,其示意图为下图。
文件目录
文件名 始址 末址
(2)利用上图的二级目录结构能满足此要求,只要在用户目录中把P1、P2、P3都改为P,但这些P都是指向各自不同的程序。
(3)存取程序和数据时,文件系统会先搜索主文件目录,找到该学生的用户目录,然后在用户目录中查找指定的文件。比如对学生S1,由路径/S1/P找到的文件是他的程序文件。因为它与/S2/P不会指向同一个文件,不会冲突。而/S1/A和/S2/A