1.什么是程序运行时的时间局限性和空间局限性?
时间局限性:如果程序中的某条指令被执行,则不久以后该指令可能再次执行;如果某数据被访问过,则不久以后该数据可能再次被访问。产生时间局限性的典型原因是程序中存在着大量的循环操作。
空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也被访问,即程序在一段时间内所访问的地址可能集中在一定的范围之内,其典型的情况便是程序的顺序执行。
2.虚拟存储器有哪些特征?其中最本质的特征是什么?
①多次性②对换性③虚拟性
最本质的特征是虚拟性。
3.试比较缺页中断机构与一般的中断,它们之间有何明显的区别?
①一般中断只需要保护现场然后就直接跳到需及时处理的地方
②缺页中断除了保护现场之外,还要判断内存中是否有足够的空间存储所需的页或段,然后再把所需页调进来再使用。
4.在请求分页系统中,常采用哪几种页面置换算法?
最佳置换算法、先进先出置换算法、最近最久未使用置换算法、最少使用置换算法、clock置换算法。
5.在一个请求分页系统中,采用FIFO页面置换算法时,假如一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,当分配给作业的物理块数M分别为3和4时,试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。(历届真题)
M=3时
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 |
---|---|---|---|---|---|---|---|---|---|---|---|
4 | 4 | 4 | 1 | 1 | 1 | 5 | 5 | 5 | |||
3 | 3 | 3 | 4 | 4 | 4 | 2 | 2 | ||||
2 | 2 | 2 | 3 | 3 | 3 | 1 |
M=4时
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 |
---|---|---|---|---|---|---|---|---|---|---|---|
4 | 4 | 4 | 4 | 5 | 5 | 5 | 5 | 1 | 1 | ||
3 | 3 | 3 | 3 | 4 | 4 | 4 | 4 | 5 | |||
2 | 2 | 2 | 2 | 3 | 3 | 3 | 3 | ||||
1 | 1 | 1 | 1 | 2 | 2 | 2 |
当M=3时,采用FIFO页面置换算法的缺页此时为9次,缺页率为75%。
当M=4时,采用FIFO页面置换算法的缺页此时为10次,缺页率为83%。
由此可见,增加分配给作业的内存块数,反而增加了缺页次数,提高了缺页率,这种现象被称为Belady现象。
6.实现LRU算法所需的硬件支持是什么?
需要寄存器和栈等硬件支持。寄存器用于记录某进程在内存中各页的使用情况,栈用于保存当前使用的各个页面的页面号。
7.当前可以利用哪几种方法来阻止“抖动”?
①采取局部置换策略
②把工作集算法融入到处理机调度中
③利用“L=S”准则调节缺页率
④选择暂停的进程
附上页面置换算法真题一道:
3.在一个采用页式虚拟存储管理的系统中,有一用户作业,它将要访问页面序列是:0,1,2,1,0,4,1,3,4,1,现分配给该作业主存中3个页面,请分别采用FIFO调度算法和LRU调度算法,对其进行页面调度,给出页面置换图,并计算各自的缺页率。
答:1)FIFO算法页面淘汰顺序为:
0 | 1 | 2 | 1 | 0 | 4 | 1 | 3 | 4 | 1 | |
---|---|---|---|---|---|---|---|---|---|---|
A | 0 | 0 | 0 | 4 | 4 | 4 | ||||
B | 1 | 1 | 1 | 3 | 3 | |||||
C | 2 | 2 | 2 | 1 |
缺页6次,缺页率为:6/10=60%。
2)LRU算法页面淘汰顺序为
0 | 1 | 2 | 1 | 0 | 4 | 1 | 3 | 4 | 1 | |
---|---|---|---|---|---|---|---|---|---|---|
A | 0 | 0 | 0 | 0 | 3 | |||||
B | 1 | 1 | 1 | 1 | ||||||
C | 2 | 4 | 4 |
缺页5次,缺页率为:5/10=50%。