1、计算机学科专业基础综合操作系统-进程管理(二)及答案解析(总分:272.00,做题时间:90 分钟)一、单项选择题(总题数:21,分数:42.00)1.有关抢夺资源预防死锁说法中不正确的是 _ 。(分数:2.00)A.若进程 P 申请资源 R 被进程 Q 占用,当进程 Q 等待另一资源时,可抢夺资源 R,否则进程 P 等待B.一个等待资源的进程只有得到新申请的资源和所有被抢夺的资源后才能继续运行C.打印机是可抢夺的资源D.主存空间是可抢夺的资源2.某计算机系统中有 8 台打印机,由 K 个进程竞争使用,每个进程最多需要 3 台打印机。该系统可能会发生死锁的最小值是 _ 。(分数:2.00)A.
2、2B.3C.4D.53.为多道程序提供的可共享资源不足时,可能出现死锁。但是,不适当的 _ 也可能产生死锁。(分数:2.00)A.进程优先权B.资源的线性分配C.进程推进顺序D.分配队列优先权4.死锁的解除方法有 _ 。(分数:2.00)A.允许进程共享资源B.静态分配资源C.抢夺资源D.采用银行家算法5.如果进程 A 正在使用打印机,进程 B 又要申请打印机,则 _ 。(分数:2.00)A.可将打印机分配给进程 B,让他们共同使用B.可让进程 B 在阻塞队列中等待C.将打印机从进程 A 中收回,使它们都不能使用D.可让进程 B 在就绪队列中等待6.操作系统中同时存在着多个进程,它们 _ 。(
3、分数:2.00)A.不能共享系统资源B.不能调用同一段程序代码C.可以共享所有的系统资源D.可以共享允许共享的系统资源7.下述哪个选项不是管程的组成部分 _ 。(分数:2.00)A.局部于管程的共享数据结构B.对管程内数据结构进行操作的一组过程C.管程外过程调用管程内数据结构的说明D.对局部于管程的数据结构设置初始值的语句8.用 PV 操作管理临界区时,信号量初值应定义为 _ 。(分数:2.00)A.-1B.0C.1D.任意值9.涉及某一资源造成与时间有关的错误的原因,正确的是 _ 。(分数:2.00)A.一个进程多次申请,释放该资源B.若干并发进程同时使用该资源C.若干并发进程互斥使用该资源
4、D.以上说法均不对10.多个进程同时存在于一个系统内,能在同一时间段内运行,被称为进程的 _ 。(分数:2.00)A.动态性B.异步性C.封闭性D.并发性11.在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,取决于 _ 。(分数:2.00)A.进程相应的程序段的长度B.进程总共需要运行时间多少C.进程自身和进程调度策略D.进程完成什么功能12.从静态的角度看,进程是由 D、E、F 三部分组成,其中 F 是进程存在的唯一标志。当几个进程共享 D时,D 应当是可重入代码。 D,E,F:数据集 程序段 I/O 缓冲区 PCB JCB (分数:2.00)13.在 _ 的情况下不可能产
5、生死锁的。(分数:2.00)A.多道程序环境中系统资源有限B.使用同类临界资源的并发进程随机交替运行C.规定进程一旦得到了需要的所有资源才投入运行D.就绪队列中已无等待的进程14.临界区是 _ 。(分数:2.00)A.一个缓冲区B.一段共享数据区C.一段程序D.一个互斥资源15.在进程的状态转换中, _ 变化一般不可能发生。(分数:2.00)A.执行就绪B.阻塞执行C.阻塞就绪D.就绪执行16.执行一次信号量 S 的 P(S)操作,使信号 S.value 的值减 1 后,若 S.value 的值为 _ 时,调用进程阻塞等待。(分数:2.00)A.小于 0 时B.大于 0 时C.等于 0 时D.
6、小于等于 0 时17.对于记录型信号量,在执行一次 wait 操作时,信号量的值应当 1A 2 ;当其值为 3B 4 时,进程应阻塞。在执行 signal 操作时,信号量的值应当 5C 6 ;当其值为 7D 8 时,应唤醒阻塞队列中的进程。 A,C:(1)不变 (2)加 1 (3)减 1 (4)加指定数值 (5)减指定数值 B,D:(1)大于 0 (2)小于 0 (3)大于等于 0 (4)小于等于 0 (分数:2.00)18.设有三个进程共享一个资源,如果每次只允许一个进程使用该资源,则用 PV 操作管理时信号量 S 的可能取值是 _ 。(分数:2.00)A.1,0,-1,-2B.2,0-1,
7、-2C.1,0,-1D.3,2,1,019.下列进程调度算法中,综合考虑进程等待时间和执行时间的是 _ 。(分数:2.00)A.时间片轮转调度算法B.短进程优先调度算法C.先来先服务调度算法D.高响应比优先调度算法20.在分时系统中,导致创建进程的典型事件是 _ 。(分数:2.00)A.用户注册B.用户登录C.用户记账D.用户通信21.进程控制块是描述进程状态和特性的数据结构,一个进程 _ 。(分数:2.00)A.可以有多个进程控制块B.可以和其他进程共用一个进程控制块C.可以没有进程控制块D.只能有唯一的进程控制块二、综合应用题(总题数:23,分数:230.00)22.设系统中有三类资源 A
8、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,能否实施分配?为什么? (分数:10.00)_23.考虑某个系统在如下时刻的状态。 Allocation Max Ava
9、ilable A B C D A B C D A B C D P0 0 0 1 2 0 0 1 1 5 2 0 P1 1 0 0 0 1 7 5 0 P2 1 3 5 4 2 3 5 6 P3 0 0 1 4 0 6 5 6 使用银行家算法回答下面的问题: (1)Need 矩阵是怎样的? (2)系统是否处于安全状态?如安全,请给出一个安全序列。 (3)如果从进程 P1 发来一个请求(0,4,2,0),这个请求能否立刻被满足?如安全,请给出一个安全序列。(分数:10.00)_24.假设有一个计算进程 CP 和一个打印进程 PP,进程 CP 将计算结果送入由 10 个缓冲区组成的缓冲池,进程 PP
10、 从该缓冲区中取出数据并打印。为实现进程同步,设置信号量 SC,SP,送数指针 in、取数指针out。同步算法如下: Struct seinaphone mutex=1 SC=10, SP=0; Message buffers10; Int in,out=0,0; Cobegin Void CP() while(TRUE) 计算下一个数据到 x; ; ; Buffersin=x; ; V(mutex); ; Void PP() while(TRUE) ; ; y=buffersout; ; V(mutex); ; 打印 y 中的数据; coend 问:(1)指出信号量 SC,SP 初值的物理意
11、义。 (2)要求打印进程打印的数据与计算进程计算的数据个数次序完全一致,在括号内填入有关的语句,完善程序。 (分数:10.00)_25.有 5 个进程如下表。时间从 0 开始,单位为 1,最高优先级为 0。 进程 到达时间 优先级 所需运行时间 A 0 2 3 B 2 3 8 C 4 4 6 D 6 1 5 E 8 0 4 绘图说明以下进程调度过程:(1 CPU 系统,所有进程只使用 CPU)。 请使用时间为横向坐标轴,并请在图中表明每个进程的“等待”和“运行”两种状态。 (1)先来先服务(FCFS)。 (2)轮转调度(RoundRobin)时间片=2。 (3)优先级轮转法(Priority
12、RoundR0bin)时间片=2。 (4)最短进程轮转法(Shortest Process Next)。 (分数:10.00)_26.在一个单 CPU 的计算机系统中,采用可剥夺式(也称抢占式)优先级的进程调度方案,且所有任务可以并行使用 I/O 设备。下表列出了三个任务 T1、T2、T3 的优先级、独立运行时占用 CPU 和 I/O 设备的时间。如果操作系统的开销忽略不计,画出三个任务的运行情况,并回答: (1)这三个任务从同时启动到全部结束的总时间是多少? (2)整个过程中 CPU 空闲时间共有多少? 任务 优先级 每个任务独立运行时所需的时间 T1 高 T2 中 T3 低 对每个任务 占
13、用 CPU10ms,I/O13ms,再占用 CPU5ms (分数:10.00)_27.试修改下面消费者生产者问题解法中的错误 Producer: Begin Repeat Produce an item in nextp; Wait(mutex); Wait(empty); Buffer(in):=nextp; (in:=(in+1)mod n;) Signal(mutex); Until false; End Consumer: Begin Repeat Wait(mutex); Wait(full): Nextc:=buffer(out); Out:=out+1; Signal(mutex
14、); Consume item in nextc; Until false; End (分数:10.00)_28.假设一个系统有三个抽烟者进程和一个供应者进程。每个抽烟者不停地卷烟并抽掉它,但是要卷起并抽掉一支烟,抽烟者需要有三种材料:烟草、纸和胶水。一个抽烟的有烟草,另一个有纸,第三个有胶水。供应者进程无限地提供三种材料,供应者每次将两种材料放到桌子上,拥有剩下那种材料的抽烟者卷一根烟并抽掉它,并给供应者一个信号告诉完成了,供应者就会放另外两种材料在桌上,这种过程一直重复(让三个抽烟者轮流地抽烟)。请用信号量及 PV 操作实现这四个进程的并发执行。 (分数:10.00)_29.在单道批处理系
15、统中,有四个作业到达输入井和需要的计算时间如表所示,现采用响应比最高者优先算法,忽略作业调度所化的时间。当第一个作业进入系统后就可开始调度。 作业 到达时间 运行时间 1 8.00 2.00 2 8.50 0.50 3 9.00 0.10 4 9.50 0.20 (1)计算平均周转时间。(注:提交时刻小数点后的计时单位是小时即 8.50 相当干 8:30) (2)写出调度作业的顺序。 (分数:10.00)_30.在一个两道的批处理操作系统中,有 6 个作业进入系统,它们的进入时刻、估计运行时间和优先级如下表所示。 作业号 进入时刻 估计运行时间 优先级 JOB1 8:00 90 分钟 5 JO
16、B2 8:10 30 分钟 6 JOB3 8:30 20 分钟 3 JOB4 8:50 25 分钟 8 JOB5 9:20 10 分钟 2 JOB6 9:40 5 分钟 4 系统采用短作业优先作业调度算法,作业一旦被调度运行就不再退出但当有新的作业投入运行时,可以按照优先级进行进程调度。 (1)试给出各个作业的运行时间序列。(例如:JOB1:8:008:30,9:109:20,) (2)试计算出作业的平均周转时间。 (分数:10.00)_31.某系统中有三个进程 P1,P2 和 P3 并发工作,其中,进程 P1 运行过程中需使用资源 S1 和 S3;进程 P2需使用资源 S1 和 S2;进程
17、P3 需要使用资源 S2 和 S3。如果进程推进过程中对资源的分配不加以限制,会导致什么样的后果,如何避免这种后果的出现。 (分数:10.00)_32.有 3 个并发进程 R、M、P,它们共享同一个缓冲区,假定缓冲区只能存放一条记录。进程 R 负责从输入设备读信息,每读入一个记录后,就把它放进缓冲区;进程 M 在缓冲区中加工读入的记录;进程 P 把加工后的记录打印输出。读入的记录经加工输出后,缓冲区又可以存放下一个记录。试写出他们能够正确执行的并发程序。 (分数:10.00)_33.如下图所示,get、copy 和 put 三进程共用两个缓冲区 s、t(其大小为每次存放一个记录)。get 进程
18、负责不断地把输入数据送入缓冲区 s 中,copy 进程负责从缓冲区 s 中取出记录然后复制到缓冲区 t 中,put 进程负责从缓冲区 t 中取出然后打印。试用 p、v 操作实现这三个进程的同步,写出程序描述。 (分数:10.00)_34.已知一个求值公式(A2+5B)/(B+2A),若 A,B 已赋值,试画出该公式求值过程的前趋图。 (分数:10.00)_35.两个进程 A 和 B,每一个进程都需要读取数据库中的记录 1,2,3 假如这两个进程都以 1、2、3 的次序读取记录,系统将不会发生死锁。但如果 A 以 3、2、1 的次序读取记录,B 以 1、2、3 的次序读取记录,则死锁可能会发生。
19、试计算两个进程读取记录的次序如果不确定,那么系统保证不发生死锁的概率是多少? (分数:10.00)_36.我们将只读数据的进程称为“读者”进程,而写或修改数据的进程称为“写者”进程。允许多个“读者”同时读数据,但不允许“写者”与其他“读者”或“写者”同时访问数据。另外,要保证:一旦有“写者”等待时,新到达的“读者”必须等待,直到该“写者”完成数据访问为止。试用 P,V 操作正确实现“读者”与“写者”的同步。 (分数:10.00)_37.p 个进程共享 m 个同类资源,每一个资源在任一时刻只能供一个进程使用每一进程对任一资源都只能使用一有限时间,使用完便立即释放。并且每个进程对该类资源的最大需求
20、量小于该类资源的数目。设所有进程对资源的最大需要数目之和小于 p+m。试证:在该系统中不会发生死锁。 (分数:10.00)_38.在一个单处理器的计算机系统中,有四个进程 P1,P2,P3,P4 的到达时间和所需要的运行时间如下表所示(时间单位:小时,以十进制计算),请问 (1)分别写出采用“先来先服务”调度算法、“短进程优先”和“响应比高者优先”调度算法选中进程运行的次序。 (2)分别计算上述三种算法使各进程在就绪队列中的平均等待时间以及三种算法下的平均周转时间。 (3)是否存在缩短平均周转时间的调度策略,如果存在,请提出来,写出选中进程运行的次序,并计算在就绪队列中的平均等待时间以及平均周
21、转时间。 进程 到达时间 运行时间 P1 0.0 8.0 P2 0.4 4.0 P3 1.0 1.0 P4 4.0 3.0 (分数:10.00)_39.理发店有一位理发师、一把理发椅及三把供等候理发的顾客做的椅子。如果没有顾客,理发师就去睡觉。如果顾客来时所有的椅子都有人,那么顾客就离去。如果理发师在忙而有空闲的椅子,那么顾客就会坐在其中的一个空闲的椅子上。如果理发师在睡觉,顾客会唤醒他。请利用信号量(semaph。res),写个程序来协调理发师和顾客进程。 (分数:10.00)_40.试画出下面四条语句的前趋图: S1:a=x+2;S2:b=y+4; S3:c=a+b S4:d=c+6 (分
22、数:10.00)_41.用相应的 PV 操作实现下图中的前趋图。 (分数:10.00)_42.三个进程 P1,P2,P3 互斥使用一个包含 N(N0)个单元缓冲区,P1 每次用 prodLice()生成一个正整数,并用 put()送入缓冲区某一空单元中,P2 每次用 getoodd()从该缓冲区中取出一个奇数,并用countodd()统计奇数个数,P3 每次用 geteven()从该缓冲区中取出一个偶数,并用 Counteven()统计偶数个数,请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义的信号量的含义,要求用伪代码描述。 (分数:10.00)_43.系统中有 5 个进程 P1,
23、P2,P3,P4,P5 如表。规定进程的优先数越小优先级越高。试描述在采用下述内种调度算法时,各个进程运行过程,并计算采用每种算法的进程平均周转时间。假设忽略进程的调度时间。 (1)先来先服务调度算法; (2)短进程优先调度算法; (3)抢占式优先级调度算法。 进程 到达时刻 运行时间/ms 优先数 P1 0 3 3 P2 2 6 5 P3 4 4 1 P4 6 5 2 P5 8 2 4 (分数:10.00)_44.请用信号量解决以下的“晕独木桥”问题:同一方向的行人可连续过桥,当某一方向有人过桥时,另一方向的行人必须等待,当某一方向无人过桥时,另一方向的行人可以过桥。 (分数:10.00)_
24、计算机学科专业基础综合操作系统-进程管理(二)答案解析(总分:272.00,做题时间:90 分钟)一、单项选择题(总题数:21,分数:42.00)1.有关抢夺资源预防死锁说法中不正确的是 _ 。(分数:2.00)A.若进程 P 申请资源 R 被进程 Q 占用,当进程 Q 等待另一资源时,可抢夺资源 R,否则进程 P 等待B.一个等待资源的进程只有得到新申请的资源和所有被抢夺的资源后才能继续运行C.打印机是可抢夺的资源 D.主存空间是可抢夺的资源解析:预防死锁的方法就是破坏产生死锁的四个必要条件之一,但第一个条件是由设备固有条件所决定的,不能改变,应加以保证,所以不能将打印机改为可抢夺的资源。A
25、 摒弃“不剥夺”条件,B 是摒弃“请求与保持”条件。D 内存本身就是可抢夺资源。2.某计算机系统中有 8 台打印机,由 K 个进程竞争使用,每个进程最多需要 3 台打印机。该系统可能会发生死锁的最小值是 _ 。(分数:2.00)A.2B.3C.4 D.5解析:每个进程 3 台,不会产生死锁;对于三个进程,可以有两个进程分别获得 3 台,使其执行完释放后让第三个进程获得 3 台,所以也不会产生死锁;对于四个进程,假若每个进程各获得 2 台而同时需要另外一台,产生了死锁,所以产生死锁的最小值是 4。 类似题型(1):假设现在有 P 个进程,每个进程最多需要 m 个资源,并且有 r 个资源可用。什么
26、样的条件可以保证死锁不会发生? 解:如果一个进程有 m 个资源它就能够结束,不会使自己陷入死锁中。因此最差情况是每个进程有 m-1 个资源并且需要另外一个资源。如果留下有一个资源可用,那么其中某个进程就能够结束并释放它的所有资源使其它进程也能够结束。所以避免死锁的条件是: rp(m-1)+1。 由此条件解上题:r=8,m=3,带入公式得:2p7。即当 P 小于等于 3 时才可保证死锁不会发生,所以可能会产生死锁的最小值是 4。 类似题型(2):某系统中有 3 个并发进程,都需要同类资源 4 个,试问该系统不会发生死锁的最少资源数是多少? 解:带入上述条件公式:r3*(4-1)+1=10。所以答
27、案为 10 个。3.为多道程序提供的可共享资源不足时,可能出现死锁。但是,不适当的 _ 也可能产生死锁。(分数:2.00)A.进程优先权B.资源的线性分配C.进程推进顺序 D.分配队列优先权解析:产生死锁的两个原因:竞争资源,进程间推进顺序非法。4.死锁的解除方法有 _ 。(分数:2.00)A.允许进程共享资源B.静态分配资源C.抢夺资源 D.采用银行家算法解析:解除死锁的方法有两个:剥夺资源,撤消进程。5.如果进程 A 正在使用打印机,进程 B 又要申请打印机,则 _ 。(分数:2.00)A.可将打印机分配给进程 B,让他们共同使用B.可让进程 B 在阻塞队列中等待 C.将打印机从进程 A
28、中收回,使它们都不能使用D.可让进程 B 在就绪队列中等待解析:打印机属于独占资源,一个进程在使用,另一个进程必须等待,不能同时使用,因此进程 B 放弃CPU,进程阻塞队列中等待。不可能进入就绪队列,因为在就绪状态定义中明确指出,已分配到除 CPU 之外的所有必要资源的进程,而此时进程 B 缺少打印机,并没有获得除 CPU 之外的所有资源,因此不能进入就绪队列。6.操作系统中同时存在着多个进程,它们 _ 。(分数:2.00)A.不能共享系统资源B.不能调用同一段程序代码C.可以共享所有的系统资源D.可以共享允许共享的系统资源 解析:引入进程的目的是为了使多道程序并发执行,以改善资源利用率及提高
29、系统吞吐量,因此同时存在的多个进程可以共享允许共享的系统资源。7.下述哪个选项不是管程的组成部分 _ 。(分数:2.00)A.局部于管程的共享数据结构B.对管程内数据结构进行操作的一组过程C.管程外过程调用管程内数据结构的说明 D.对局部于管程的数据结构设置初始值的语句解析:管程由局部于管程的共享变量说明对管程内数据结构进行操作的一组过程以及对局部于管程的数据设置初始值的语句组成。8.用 PV 操作管理临界区时,信号量初值应定义为 _ 。(分数:2.00)A.-1B.0C.1 D.任意值解析:临界资源的访问是互斥的,也就是一次只允许一个进程访问,因此信号量的初值应为 1。9.涉及某一资源造成与
30、时间有关的错误的原因,正确的是 _ 。(分数:2.00)A.一个进程多次申请,释放该资源B.若干并发进程同时使用该资源 C.若干并发进程互斥使用该资源D.以上说法均不对解析:一个进程不可能引起死锁,若干并发进程互斥的使用资源也不会引起死锁,若不加限制,若干并发进程同时使用该资源有可能会造成死锁。10.多个进程同时存在于一个系统内,能在同一时间段内运行,被称为进程的 _ 。(分数:2.00)A.动态性B.异步性C.封闭性D.并发性 解析:进程五个特性:结构特征,动态性,并发性,独立性,异步性。此处是对并发性的解释。11.在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,取决于 _
31、 。(分数:2.00)A.进程相应的程序段的长度B.进程总共需要运行时间多少C.进程自身和进程调度策略 D.进程完成什么功能解析:12.从静态的角度看,进程是由 D、E、F 三部分组成,其中 F 是进程存在的唯一标志。当几个进程共享 D时,D 应当是可重入代码。 D,E,F:数据集 程序段 I/O 缓冲区 PCB JCB (分数:2.00)解析:D:程序段,E:数据集,F:PCB。13.在 _ 的情况下不可能产生死锁的。(分数:2.00)A.多道程序环境中系统资源有限B.使用同类临界资源的并发进程随机交替运行C.规定进程一旦得到了需要的所有资源才投入运行 D.就绪队列中已无等待的进程解析:规定
32、进程一旦得到了需要的所有资源才投入运行是预防死锁的一种方法,当然不可能发生死锁。D中,就绪队列中无等待的进程,有可能所有进程处于死锁状态,都在阻塞队列中。14.临界区是 _ 。(分数:2.00)A.一个缓冲区B.一段共享数据区C.一段程序 D.一个互斥资源解析:临界区就是进程中访问临界资源的那段代码。15.在进程的状态转换中, _ 变化一般不可能发生。(分数:2.00)A.执行就绪B.阻塞执行 C.阻塞就绪D.就绪执行解析:阻塞 执行:如果一个进程因等待 I/O 而产生阻塞,在 I/O 资源释放后,若 CPU 处于休眠状态,此进程就可以直接从阻塞状态迁移到执行状态,但很少有这种情况发生,所以是
33、一般不可能发生的。有些参考书中认为这种转换是不可能发生的。看清选项如果有就绪一阻塞,应该是最佳答案,如果选项中没有就绪一阻塞,只有阻塞一执行,则将其作为不可能发生的答案。16.执行一次信号量 S 的 P(S)操作,使信号 S.value 的值减 1 后,若 S.value 的值为 _ 时,调用进程阻塞等待。(分数:2.00)A.小于 0 时 B.大于 0 时C.等于 0 时D.小于等于 0 时解析:P 操作描述如下 P(s) s.value=s.value-1: if(s.value0) block(s.L)该进程状态置为等待状态 将该进程的 PCB 插入相应的等待队列末尾; 17.对于记录型
34、信号量,在执行一次 wait 操作时,信号量的值应当 1A 2 ;当其值为 3B 4 时,进程应阻塞。在执行 signal 操作时,信号量的值应当 5C 6 ;当其值为 7D 8 时,应唤醒阻塞队列中的进程。 A,C:(1)不变 (2)加 1 (3)减 1 (4)加指定数值 (5)减指定数值 B,D:(1)大于 0 (2)小于 0 (3)大于等于 0 (4)小于等于 0 (分数:2.00)解析:A 减 1;B 小于 0;C 加 1;D 小于等于 018.设有三个进程共享一个资源,如果每次只允许一个进程使用该资源,则用 PV 操作管理时信号量 S 的可能取值是 _ 。(分数:2.00)A.1,0
35、,-1,-2 B.2,0-1,-2C.1,0,-1D.3,2,1,0解析:如果没有进程使用,S 为 1,有一个进程使用为 0,若此时又有进程想使用,s 为-1,第三个进程也想使用,这时 s 为-2。19.下列进程调度算法中,综合考虑进程等待时间和执行时间的是 _ 。(分数:2.00)A.时间片轮转调度算法B.短进程优先调度算法C.先来先服务调度算法D.高响应比优先调度算法 解析:本题考查进程调度算法的基本概念。时间片轮转调度算法是保证用户的响应时间,每个进程分配一个时间片,所以在一给定的很短时间内进程都可以获得执行,等待时间都比较短,但没有考虑进程执行时间长短问题;先来先服务调度算法只考虑了进
36、程的等待时间,等待时间长的进程优先处理;短进程优先调度算法只考虑了执行时间,执行时间短的进程优先处理。高响应比优先调度算法中如果进程等待时间相同,执行时间短的优先,进程执行时间相同的等待时间短的优先,所以综合考虑了进程等待时间和执行时间。20.在分时系统中,导致创建进程的典型事件是 _ 。(分数:2.00)A.用户注册B.用户登录 C.用户记账D.用户通信解析:此题考查的引起创建进程的事件。在分时系统中,用户在终端键入登录命令后,如果是合法用户,系统将为该终端建立一个进程并把它插入就绪队列。21.进程控制块是描述进程状态和特性的数据结构,一个进程 _ 。(分数:2.00)A.可以有多个进程控制
37、块B.可以和其他进程共用一个进程控制块C.可以没有进程控制块D.只能有唯一的进程控制块 解析:一个进程只能有唯一的一个进程控制块与其对应,进程控制块是进程存在的唯一标志,是系统感知进程存在的依据。二、综合应用题(总题数:23,分数:230.00)22.设系统中有三类资源 AB 和 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
38、 1 1 3 (1)系统是否处于安全状态?如是,则给出进程安全序列 (2)如果进程 P5 申请 1 个资源类 A,1 个资源类 B 和 1 个资源类 C,能否实施分配?为什么? (分数:10.00)_正确答案:()解析:(1) 最大需求量 已分配资源量 剩余资源量 尚需要量 A B C A B C A B C A B C P1 8 6 4 1 2 1 2 1 1 7 4 3 P2 4 3 3 3 1 1 1 2 2 P3 10 1 3 4 1 3 6 0 0 P4 3 3 3 3 2 2 0 1 1 P5 5 4 6 1 1 3 4 3 3 系统是处于安全状态,安全序列为:P4,P2,P1,P
39、3,P5 (2)P5 申请(1,1,1) 进行两个判断:(1,1,1)小于 P5 的 Need(4,3,3); (1,1,1)小于当前的剩余 Available(2,1,1) 假定分配给 P5,修改 P5 的 allocation 及 Need 数据,还有系统的 Available 数据。 最大需求量 已分配资源量 剩余资源量 尚需要量 A B C A B C A B C A B C P1 8 6 4 1 2 1 1 0 0 7 4 3 P2 4 3 3 3 1 1 1 2 2 P3 10 1 3 4 1 3 6 0 0 P4 3 3 3 3 2 2 0 1 1 P5 5 4 6 2 2 4
40、3 2 2 利用安全性算法检查此时系统是否安全。 因为所剩余的资源量(1,0,0)已经不能满足任何进程的需要,故系统进入不安全状态。不能实施分配。23.考虑某个系统在如下时刻的状态。 Allocation Max Available A B C D A B C D A B C D P0 0 0 1 2 0 0 1 1 5 2 0 P1 1 0 0 0 1 7 5 0 P2 1 3 5 4 2 3 5 6 P3 0 0 1 4 0 6 5 6 使用银行家算法回答下面的问题: (1)Need 矩阵是怎样的? (2)系统是否处于安全状态?如安全,请给出一个安全序列。 (3)如果从进程 P1 发来一个
41、请求(0,4,2,0),这个请求能否立刻被满足?如安全,请给出一个安全序列。(分数:10.00)_正确答案:()解析:(1)Need 矩阵如下图 A B C D P0 0 0 0 0 P1 0 7 5 0 P2 1 0 0 2 P3 0 6 4 2 (2)此该的安全性 Work Need Allocation W+A Finish A B C D A B C D A B C D A B C D P0 1 5 2 0 0 0 0 0 0 0 1 2 1 5 3 2 True P2 1 5 3 2 1 0 0 2 1 3 5 4 2 8 8 6 True P1 2 8 8 6 0 7 5 O 1 0 0 0 3 8 8 6 True P3 3 8 8 6 0 6 5 6 0 0 1 4 3 8 9 10 True 因为找到一个安全序列PO,P2,P1,P3,故当前系统处于安全状态。 (3)P1 发出请求(0,4,2,0) 进行两个判断:(0,4,2,0)小于 P1 的 Need(0,7,5,0); (0,4,2,0)小于当前的剩余 Available(1,5,2,0) 假定分配给 P1,修改 P1 的 allocation 及 Need 数据,还有系统的 Available 数据。 P1 的 allocatio