操作系统试题库
- 格式:doc
- 大小:125.50 KB
- 文档页数:23
200353. 某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题:
(1)用P、V操作管理这些并发进程时,应怎样定义信号量?写出信号量的初值以及信号量各种取值的含义。
(2)根据所定义的信号量,把应执行的P、V操作填入下述程序中,以保证进程能够正确地并发执行。
Cobegin PROCESS Pi(i=1,2,…)
Begin
进入售票厅;
购票;
退出;
End;
Coend
(3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。
此题答案为:售票厅问题解答如下:
(1)定义一信号量S,初始值为20。
S>0 S的值表示可继续进入售票厅的人数;
S=0 表示售票厅中已有20名购票者;
S<0 |S|的值为等待进入售票厅中的人数。
(2)上框为P(S),下框为V(S)。
(3)S的最大值为20,S的最小值为20-N,N为某一时刻需要进入售票厅的最多人数。
此题难度等级为:A
200354. 已经系统中有四个缓冲池M0,M1,M2,M3。其容量分别为3、2、3、2,现各缓冲区分别存在0、1、0、2个数据。现同时有四个进程P0、P1、P2、P3分别在各缓冲区间不断地移动数据(见图3.5)。例如,P0进程从M0向M1移动数据。试用信号量及其P、V(或signal,wait)操作及类Pasic/C语言描述各进程之间的同步关系,并给出各信号量的含义和初值。
此题答案为:缓冲池各问题解答如下:
(1)互斥信号量和初值
M(0)=1,M(1)=1,M(2)=1,M(3)=1,
(2)同步信号量
Full(i)表示buffer(i)是否有数据;
初值为full(0)=0,full(1)=1,full(2)=0,full(3)=2; Empty(i)表示buffer(i)是否有空间;
初值为empty(0)=3,empty(1)=1,empty(2)=3,empty(3)=0
(3)进程i的程序
Process Proc(i)
{ p(full(i));
p(empty(i+1) mod 5);
p(m(i));
move;
v(m(i));
v(m(full(i+1) mod 5));
v(empty (i));
}
此题难度等级为:A
200356. 设有两个优先级相同的进程P1和P2如下,信号量S1和S2的初值均为0。试问P1、P2并发执行结束后,x=?,y=?,z=?
Y:=1;
Y:=y+2;
V(S1);
Z:=y+1;
P(S2);
Y:=z+y;
<进程P2>
X:=1;
X:=x+1;
P(S1);
X:=x+y;
V(S2);
Z:=x+z; 此题答案为:答:因为P1和P2是两个并发进程,所以进程调度程序调度P1 和P2的顺序是不确定的。
这里不妨假设P1先执行。进程P1执行到语句P(S2)时,S2=-1,进程P1阻塞。此时y=3,z=4。当进程调度程序调度到进程P2时,由于进程P1已执行了V(S1),进程P2在执行P(S1)时并未阻塞而继续执行,当执行到 V(S2)时,将P1唤醒,然后执行最后一个语句z:=x+z,此时x=5,z=9。当进程P1再次被调度时,继续执行P1的最后一个语句,此时y=12,最终结果是:x=5,y=12,z=9。
如果当P2进程执行到 V(S2)时,将P1唤醒,然后P2进程被中断,此时x=5,y=3,z=4。P1进程开始执行然后执行最后一个语句y:=z+y,此时x=5,y=3,z=7。然后P2进程被调度,执行z:=x+z,此时x=5,y=3,z=12。
如果P2先执行,则执行结果与上面相同。
此题难度等级为:D
200362. 在批处理系统、分时系统和实时系统中,各采用哪几个进程(作业)调度算法?
此题答案为:答:(1)批处理系统中的作业调度算法有:先来先服务算法(FCFS)、短作业优先算法(SJF)、优先级调度算法(HPF)和高响应比优先算法(RF)。批处理系统的进程调度算法有:先进先出算法(FIFO)、短进程优先算法(SPF)、优先级调度算法(HPF)和高响应比优先算法(RF)。
(2)分时系统中只设有进程调度(不设作业调度),其进程调度算法只有轮转法(RR)一种。
(3)实时系统中只设有进程(不设作业调度),其进程调度算法调度有:轮转法、优先级调度算法。前者适用于时间要求不严格的实时系统;后者用于时间要求严格的实时系统。后者又可细分为:非抢占式优先级调度、抢占式优先级调度、基于时钟中断的抢占式优先级调度。
注意,一个纯粹的实时系统是针对特定应用领域设计的专用系统。作业提交的数量不会超过系统规定的多道程序的道数,因而可全部进入内存。若将实时系统与批处理系统结合的话,就可以让作业量超过多道程序道数,使优先级低的作业呆在外存的后备队列上。
此题难度等级为:A
200372. 假设系统中有5个进程,它们的到达时间和服务时间见下表1,忽略I/O以及其他开销时间,若按先来先服务(FCFS)、非抢占的短作业优先和抢占的短作业优先三种调度算法进行CPU调度,请给出各个进程的完成时间、周转时间、带权周转时间、平均周转时间和平均带权周转时间,完成表2。
表1 进程到达和需要服务时间
进程 到达时间 服务时间
A 0 3
B 2 6
C 4 4
D 6 5
E 8 2
表2 进程的完成时间和周转时间
进程 A B C D E 平均 FCFS 完成时间
周转时间
带权周转时间
SPF(非抢占) 完成时间
周转时间
带权周转时间
SPF(抢占) 完成时间
周转时间
带权周转时间
此题答案为: 表2 进程的完成时间和周转时间
进程 A B C D E 平均
FCFS 完成时间 3 9 13 18 20
周转时间 3 7 9 12 12 8.6
带权周转时间 1.00 1.17 2.25 2.40 6.00 2.56
SPF(非抢占) 完成时间 3 9 15 20 11
周转时间 3 7 11 14 3 7.6
带权周转时间 1.00 1.17 1.75 2.80 1.50 1.84
SPF(抢占) 完成时间 3 15 8 20 10
周转时间 3 13 4 14 2 7.2
带权周转时间 1.00 2.16 1.00 2.80 1.00 1.59
此题难度等级为:A
200377. 一个逻辑空间最多可有64个页,每页1KB字节。若把它映射到由32个物理块组成的存储器。问:(1)有效的逻辑地址由多少位?(2)有效的物理地址由多少位?
此题答案为:答:一个逻辑空间有64个页,每页1KB字节。若把它映射到由32个物理块组成的存储嚣。64=26,则:
(1)逻辑地址有16位。
(2)物理地址有15位。
说明:解此题的关键是要知道在分页管理中,"页"和"块"是一样大小的,这样才知道物理存储器是32KB。
此题难度等级为:B
200380. 在某分页系统中,测得CPU和磁盘的利用率如下,试指出每种情况下的问题和措施。 (1)CPU的利用率为15%,磁盘利用率为95%。
(2)CPU的利用率为88%,磁盘利用率为3%。
(3)CPU的利用率为13%,磁盘利用率为5%。
此题答案为:答:在某分页虚存系统中,在题中的CPU和磁盘的利用率的情况下,出现的问题和应采取的措施如下:
(1)可能已出现了抖动现象,应减少系统的进程数。
(2)系统比较正常,可考虑适当增加进程数以提高资源利用率。
(3)CPU和磁盘的利用率都较低,必须增加并发进程数。
此题难度等级为:A
200381. 对访问串:1,2,3,4,1,2,5,1,2,3,4,5,指出在驻留集大小分别为3,4时,使用FIFO和LRU替换算法的缺页次数。结果说明了什么?
此题答案为:答:首先采用FIFO,当m=3时,缺页次数=9,当m=4时,缺页次数=10。
采用LRU算法,当m=3时,缺页次数=10;当m=4时,缺页次数=8。
结果说明:FIFO有Belady奇异现象,即不满足驻留集增大,缺页次数一定减小的规律;另外在m=3时,LRU的缺页次数比FIFO要多,所以LRU算法并不总优于FIFO,还要看当前访问串的特点。
此题难度等级为:C
200389. 一个分页存储器的页表存放在内存。
(1)若内存的存取周期为0.6ms,则CPU从内存取一条指令(或一个操作数)需多少时间?
(2)若使用快表且快表的命中率为75%,则内存的平均存取周期为多少?
此题答案为:答:一个分页存储器的页表存放在内存
(1)因为页表放在内存,故取一条指令(或一个操作数)须访问两次内存,所以需0.6ms×2=1.2ms的时间。