当前位置:文档之家› 第三章 调度和死锁

第三章 调度和死锁

第三章调度和死锁
一、单选题
1、在就绪队列中有n个进程等待使用一个cpu,那么如果采用拥有同一种调度算法,总共可能有()种调度顺序
A. n
B. n2
C. n( n-1)/2
D. n!
2、现在有三个同时到达的作业A,B,C,它们的执行时间分别是t1,t2,t3,且t1<t2<t3. 系统按照单道方式运行且采用短作业优先调度算法,则平均周转时间是()。

A. t1+t2+t3
B. (t1+t2+t3)/3
C. (3t1+2t2+t3)/3
D. (t1+2t2+3t3)/3
3、有5个批处理作业A,B,C,D,E几乎同时到达,其预计运行时间分别是10,6,2,4,8, 其优先级(由外部设定)分别是3,5,2,1,4,这里5是最高优先级,以下各种调度算法中平均周转时间为14的是()。

A. 时间片轮转
B. 优先级服务
C. 先来先服务(按照次序10,6,2,4,8)
D. 短作业优先
4、对于处理机调度中的高响应比优先调度算法,通常影响响应比的主要因素是()。

A. 程序长度
B. 静态优先数
C. 运行时间
D. 等待时间
5、下列选项中满足短任务优先并且不会发生饥饿现象的是()。

A.先来先服务 B. 高响应比优先 C. 时间片轮转 D. 非抢占式短任务优先6、在一个单CPU的系统中,I/O1和I/O2 是两个不同的输入/输出设备,它们能够同时工作。

当使用CPU之后控制转向I/O1和I/O2时,或者使用I/O1和I/O2 之后控制转向CPU时,由控制程序执行中断处理,但是这段处理时间可以忽略不计。

有A、B两个进程同时被创建,进程B的调度优先级比进程A高,但是当进程A正在使用CPU时,即时进程B需要占用CPU,也不能打断进程A的
执行。

若在同一系统中分别单独执行,则需要占用CPU、I/O1、I/O2的时间分别如下:
进程A:
进程B:
经过计算可以知道,()执行结束。

A. 进程A
B. 进程B
C. 进程A和进程B同时结束
D. 不一定
7、支持多道程序设计的操作系统在运行的过程中,不断地选择新进程运行来实现CPU的共享,但其中()不是引起操作系统选择新进程的直接原因。

A. 运行进程的时间片用完 B. 运行进程出错
C. 运行进程要等待某一时刻
D. 有新进程进入就绪队列
8、死锁的预防是根据()而采取措施实现的。

A. 配置足够的系统资源
B. 使进程的推进顺序合理
C. 破坏死锁的四个必要条件之一
D. 防止系统进入不安全状态
9、某系统中有11台打印机,N个进程共享打印机资源,每个进程要求3台,但N的取值不超过()时,系统不会发生死锁。

A. 4
B. 5
C. 6
D.7
10、某个计算机系统中共有8台打印机,由K个进程竞争使用,每个进程最多需要3台打印机,该系统可能会发生死锁的K的最小值是()
A.2
B. 3
C. 4
D. 5
提示:由银行家算法可以推出,要使系统安全,对于系统中有m个资源,有n 个并发进程共享使用时,每个进程可以提出的最大资源请求数量为x时,则有n(x-1)+1<=m
11、某系统中有3个并发进程,且都需要同类资源4个,试问该系统不会发生死锁的最小资源数目是()
A. 9
B. 10
C. 11
D. 12
12、死锁定理是用于处理死锁方法中的()方法。

A. 预防死锁
B. 避免死锁
C. 检测死锁
D. 解除死锁
13、某时刻进程对资源的使用情况如下所示,此时系统中的安全序列是()。

二、综合题
1、一个作业从提交开始直到运行结束,可能经过哪些调度?每种调度的功能是什么?若在后备作业队列中同时等待运行的有3个作业A、B、C,已知它们各自的运行时间a、b、c, 其满足a<b<c,证明采用短作业优先调度算法能获得最小
平均周转时间。

并说明短作业优先调度算法会产生什么问题。

2、有5个待执行的作业,分别是A、B、C、D、E,各自估计运行的时间是9,6,3,5,x.试问采用哪种运行次序使平均周转时间最短,其平均周转时间是多少?(提示:答案依赖于x )
3、系统中有5个就绪进程,其就绪时刻(指在该时刻已经在就绪队列中就绪)、服务时间如表所示。

若采用先来先服务、短作业优先、高响应比优先、时间片轮转调度算法(时间片为1),计算相关的平均周转时间和平均带权周转时间。

4、系统中有5个进程,每个进程的运行时间(单位为ms)、优先级和到达时刻如表所示,请给出当系统采用时间片轮转算法(时间片为1ms,此时不考虑进程的优先级)、不可抢占优先级调度和抢占式优先级调度算法时,各进程的运行情况。

其中优先级越大越优先得到执行。

5、假设要在一台处理机上执行如下表所示的作业,其中优先数小的优先级高。

并且假定作业的到达次序为1,2,3,4,5。

用甘特图来说明分别使用FCFS、时间片轮转(时间片=1)、SJF及非抢占优先级调度算法时这些作业的执行情况:针对上述的每一种调度算法,求出每个作业相应的周转时间;就上述的每一种调度算法,,求出每个作业的相应的等待时间。

甘特图:又叫横道图。

它是以图示的方式通过活动列表和时间刻度形象地表示出任何特定项目的活动顺序与持续时间。

6、某个进程被唤醒之后立即投入运行,就说这个系统采用的是剥夺式调度方式,对吗?为什么?
7、将一组就绪进程分为4类,如下图所示。

各类进程之间采用优先级调度,而各类进程的内部采用时间片轮转调度。

请简述P1,P2,P3,P4,P5,P6,P7,P8进程的调度过程。

优先级4 (最高)→P1→P2→P3
优先级3→P4→P5
优先级2→P6→P7→P8
优先级1(最低)
注意:在进程调度过程中可能有些进程运行一段时间后会处于阻塞状态。

8、假设一个计算机系统具有以下性能特征:处理一次中断,平均耗用1ms,一次进程调度,平均需要2ms,将CPU分配给选中的进程,平均需要1ms。

再假设其定时器芯片每秒产生100次中断。

请回答:操作系统将百分之几的CPU时间用于时钟中断?如果采用时间片轮转调度算法,10个时钟中断为1个时间片。

那么,操作系统将百分之几的CPU时间用于进程调度(包括调度、分配CPU和引起调度的时钟中断处理时间)?
9、有两个程序,A程序按顺序使用CPU 10s,使用设备甲5s,使用CPU 5s,使用设备乙10s,最后使用CPU 10s。

B程序按顺序使用设备甲10s,使用CPU 10s,使用设备乙5s,使用CPU 5s,最后使用设备乙10s。

在顺序环境下先执行A,再执行B,CPU 的使用效率是多少?
10、假定就绪队列中有10个进程,系统将时间片设定为200ms,CPU进行进程切换需要10ms,试问系统开销所占的比率大约是多少?
11、在单CPU和两台输入/输出设备(I1,I2)的多道程序设计环境下,同时投入3个作业Job1,Job2,Job3运行,这三个作业对CPU和输入/输出设备的使用顺序和时间如下所示:
Job1: I2(30ms);CPU (10ms);I1(30ms);CPU( 10ms);I2( 20ms)
Job2: I1(20ms);CPU (20ms);I2(40ms)
Job3: CPU (30ms);I1(20ms) ;CPU(10ms);I1(10ms)
假定CPU, I1,I2都能并行工作,Job1优先级最高,Job2 次之,Job3 优先级最低,优先级高的作业可以抢占优先级的作业的CPU,但是不能抢占I1和I2。

试求:(1)3个作业从投入到完成分别需要的时间
(2)从投入到完成的CPU的利用率。

(3)I/O设备的使用率。

12、设系统中仅有一类数量为M的独占型资源,系统中有N个进程竞争使用,其中各进程对该类资源的最大需求量是W,当M、N、W分别取下列值时,试判断下列情况哪些会发生死锁,为什么?
13、银行家算法的主要思想是什么?它能够用来解决实际中的死锁问题吗?为什么?
14、设系统中有3种类型的资源A,B,C和5个进程P1,P2,P3,P4,P5,系统提供的A,B,C三类资源的数量分别是17,5,20。

在T0 时刻系统的状态如表所示,系统采用银行家算法实施死锁避免策略。

1)T0 时刻系统是否处于安全状态?若是,请给出安全序列。

2)若在T0 时刻进程P2请求资源(0,3,4),能否实施资源分配?为什么?3)在2)题的基础上,若进程P4 请求资源(2,0,1),是否能实施资源分配?为什么?
4)在3)题的基础上,若进程P1 请求资源(0,2,0),是否能实施资源分配?为什么?
15、假定系统有R1和R2 两类资源,其中R1有2个,R2有1个,它们被进程P1和P2 共享,且已知两个进程均以下列顺序使用这两类资源:
→申请R1→申请R2→申请R1→释放R1→释放R2→释放R1
试求出系统运行过程中可能达到的死锁点,并画出死锁点的资源分配图(或称进程-资源图)。

相关主题