试题
发布日期:【 2009-7-27 】
《操作系统》模拟试题 一
一、填空题(本题共25分,每题5分)
1、进程的逻辑地址到__________地址的转换,称为重定位。 2、分区管理分为__________和__________两种方式。
3、处理机在执行系统程序时的状态称为__________,在执行用户程序时的状态称为__________。 4、如果为了使所有进程都有机会运行,最好采用的调度算法是__________。 5、对记录式文件,操作系统为用户存取文件信息的最小单位是__________。 二、(本题满分为10分)
以打印机为例说明SPOOLING的工作原理,系统如何利用SPOOLING技术将打印机模拟为虚拟打印机。
三、(本题满分为10分) 对于如下的页面访问序列:
1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5
当内存块数量分别为3和4时,试问:使用FIFO、LRU置换算法产生的缺页中断是多少?(所有内存开始时都是空的,凡第一次用到的页面都产生一次缺页中断)
四、(本题满分为15分)
某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
页号 0 物理块号 3 1 2 3 7 11 8 则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。
五、(本题满分为15分)
假定具有5个进程的进程集合P={P0,P1,P2,P3,P4},系统中有三类资源A,B和C。其中A类资源有10个,B类资源有5个,C类资源有7个。假定在某时刻有如下状态: Allocation Max Available A B C A B C A B C P0 0 1 0 7 5 3 3 3 2 P1 2 0 0 3 2 2 P2 3 0 2 9 0 2 P3 2 1 1 2 2 2 P4 0 0 2 4 3 3
试给出Need,并说明当前系统是否处于安全状态,如果是,给出安全序列。如果不是,说明理由。 答案
一、1、物理 2、静态分区 动态分区 3、系统态 用户态 4、轮转法 5、记录
二、当用户进程请求打印输出时,Spooling系统同意打印输出,但并不真正把打印机分配给该用户进程,而只为它做两件事:1,由输出进程在输出井中为之申请一空闲盘块区,并将要打印的数据送入其中;2,
输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入表中,再将该表挂到请求打印队列之上。如果还有进程要求打印输出,系统仍可以接受该请求,同样做上面的工作。如果打印机空闲,输出进程将从请求打印队列的队首取出一张请求表,根据表中的要求将要打印的数据从输出井传送到内存缓冲区,再由打印机进行打印。打印完毕,输出进程再查看请求打印队列中是否还有等待要打印的请求表,若有,再取出一张表,并根据其中的要求进行打印,如此下去,直至请求队列为空位置,输出进程才将自己阻塞起来,等待下次再由打印请求时才被唤醒。 三、FIFO淘汰算法:
内存块为3时,缺页中断(或称缺页次数、页面故障)为9; 内存块为4时,缺页中断为10。 LRU淘汰算法:
内存块为3时,缺页中断为10; 内存块为4时,缺页中断为8。 四、125C(H)(要求写出计算步骤)
[分析]页式存储管理的逻辑地址分为两部分:页号和页内地址。
由已知条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,1K=2,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码 “000 10” 为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得01 0010 0101 1100,即125C(H)。 五、当前系统处于安全状态,安全序列如下求解: work = Available = (3 , 3 , 2 )
寻找 Needj <= work = ( 3 , 3 , 2 ) ( j = 0 , 1 , 2 , 3 , 4) j = 1 Need1 = (1 ,2 ,3 ) < = (3 , 3 , 2 )
work : = (3 , 3 , 2 ) + (2 ,0 ,0 ) = (5 , 3 , 2 )
寻找 Needj <= work = ( 5 , 3 , 2 ) ( j = 0 , 2 , 3 , 4) j = 3 Need3 = (0 ,1 ,1 ) < = (5 , 3 , 2 ) work : = (5 , 3 , 2 ) + (2 ,1 ,1 ) = (7 , 4 , 3 ) 寻找 Needj <= work = (7 , 4 , 3 ) ( j = 0 , 2 , 4)
10
j = 4 Need4 = (4 ,3 ,1 ) < = (7 , 4 , 3 ) work : = (7 , 4 , 3 ) + (0 ,0 ,2 ) = (7 , 4 , 5) 寻找 Needj <= work = (7 , 4 , 5) (j = 0 , 2 ) j = 2 Need2 = (6 ,0 ,0 ) < = (7 , 4 , 5 )
work : = (7 , 4 , 5 ) + (3 ,0 ,2 ) = (10 , 4 , 7) 寻找 Needj <= work = (10 , 4 , 7) ( j = 0 )
j = 0 work : = (10 , 4 , 7 ) + (0 ,1 ,0 ) = (10 , 5 , 7) 所以安全序列为<P1,P3,P4,P2,P0>。
《操作系统》模拟试题 二
一、 填空题(本题共25分,每题5分)
1、 操作系统是计算机系统的一种系统软件,它以尽量合理、有效的方式组织和管理计算机的__________,并控制程序的运行,使整个计算机系统能高效地运行。
2、 操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列等待的条件是__________。 3、 银行家算法中,当一个进程提出的资源请求将导致系统从__________进入__________时,系统就拒绝它的资源请求。
4、 在请求页式存储管理中,若采用FIFO页面淘汰算法,则当分配的页面数增加时,__________的次数可能增加也可能减少。
5、 采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是__________。
二、(本题满分为10分)
在操作系统中,P操作和V操作各自的动作是如何定义的?
三、(本题满分为10分)
假设一个活动头磁盘有200道, 编号从0-199. 当前磁头正在143道上服务, 并且刚刚完成了125道的请求. 现有如下访盘请求序列(磁道号):
86, 147, 91, 177, 94, 150, 102, 175, 130
试给出采用下列算法后磁头移动的顺序和移动总量(总磁道数).
(1). 先来先服务(FCFS)磁盘调度算法. (2). 最短寻道时间优先(SSTF)磁盘调度算法.
(3). 扫描法(SCAN)磁盘调度算法.(假设沿磁头移动方向不再有访问请求时, 磁头沿相反方向移动.)
四、(本题满分为15分)
设系统中有三类资源A、B和C,又设系统中有5个进程P1,P2,P3,P4和P5.在T0时刻系统状态如下:
最大需求量 已分配资源量 剩余资源量 A B C A B C A B C P1 8 6 4 1 2 1 2 1 1 P2 4 3 3 3 1 1 P3 10 1 3 4 1 3 P4 3 3 3 3 2 2 P5 5 4 6 1 1 3
(1) 系统是否处于安全状态?如是,则给出进程安全序列.
(2) 如果进程P5申请1个资源类A、1个资源类B和1个资源类C,能否实施分配?为什么?
五、(本题满分为15分)
有n+1个进程A1, A2, ...An 和 B:
(1) A1,...An通过同一个缓冲区各自不断地向B发送消息, B不断地取消息, 它必 须取走发来的每一个消息. 刚开始时缓冲区为空. 试用P、V操作正确实现之. (2) 若缓冲区个数增至m个, 试用P、V操作实现正确的通讯. 答案: