第三章、处理机调度与死锁
一、选择题:
1、一个多道批处理系统中仅有P1和P2两个作业,P2比P1晚5ms到达,它们
的计算和I/O操作顺序如下: P1:计算60ms,I/O80ms,计算20ms P2:计算120ms,I/O40ms,计算40ms
若不考虑调度和切换时间,则完成两个作业需要的时间最少是 B 。 A.240ms
B.260ms
C.340ms
D.360ms
2、采用时间片轮转调度算法主要是为了 A 。
A.多个终端都能得到系统的及时响应 B.先来先服务
C.优先权高的进程及时得到调度 D.需要CPU时间最短的进程先做
3、某计算机系统中有8台打印机,有k个进程竞争使用,每个进程最多需要3
台打印机。该系统可能会发生死锁的k的最小值是____C______。 A.2
B.3
C.4
D.5
4、作业调度程序从 D 状态的队列中选取适当的作业投入运行。
A.就绪
B.提交
C.等待
D.后备
5、在操作系统中,所谓“死锁”是指 B 。
A.程序死循环 C.硬件故障
B.多个进程彼此等待资源而不能前进的状态 D.时间片太短,进程的调进调出太频繁而效率太低
6、在下列解决死锁的方法中,不属于死锁预防策略的是 D 。 A.资源的有序分配法
B.资源的静态分配法
C.分配的资源可剥夺法 D.银行家算法
7、设有三个作业J1、J2、J3,它们的到达时间和执行时间如下表:
作业名 到达时间 执行时间 J1 J2 J3
8:00 2小时 8:45 1小时 9:30 0.25小时
它们在一台处理器上按单道运行,若采用短作业优先调度算法,则此三作业的执行次序是 C 。
A.J3,J2,J1 C.J1,J3,J2
B.J1,J2,J3 D.J3,J1,J2
8、下列选项中,满足短任务优先且不会发生饥饿现象的调度算法是 B 。
A.先来先服务 C.时间片轮转
B.高响应比优先
D.非抢占式短任务优先
9、.两个进程争夺同一个资源 B 。
A.一定死锁
B.不一定死锁 D.以上说法都不对
C.只要互斥就不会死锁
10、下面关于优先权大小的论述中,不正确的论述是 C 。
A.计算型作业的优先权,应低于I/O型作业的优先权 B.系统进程的优先权应高于用户进程的优先权
C.资源要求多的作业,其优先权应高于资源要求少的作业 D.在动态优先权时,随着进程运行时间的增加,其优先权降低 11、分时系统中进程调度算法通常采用 B 。
A.响应比高者优先 C.先来先服务
B.时间片轮转法 D.短作业优先
12、下列进程调度算法中,综合考虑进程等待时间和执行时间的是____D______。
A.时间片轮转调度算法 C.先来先服务调度算法
13、进程调度的关键问题是 C 。
A.内存的分配 C.调度算法的确定
B.时间片的确定 D.I/O设备的分配
B.短进程优先调度算法 D.高响应比优先调度算法
14、在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,
取决于 C
A.进程相应的程序段的长度 C.进程自身和进程调度策略
B.进程总共需要运行时间多少 D.进程完成什么功能
15、有三个作业A、B、C,它们的到达时间和执行时间依次为(8:50和1.5小时)、
(9:00和0.4小时)、(9:30和1小时)。批处理单道系统按响应比高者优先算法进行调度,则作业被选中的次序为 A 。 A.(ABC)
B.(BAC)
C.(BCA)
D.(CAB)
二、判断题:
1、不安全状态一定会出现死锁状态(错)
三、综合应用题:
1、有两个作业A和B,分别在7:00和8:30到达系统,它们估计的计算时间分别为0.8小时和0.1小时,系统在9:00开始以响应比高者优先算法进行调度。在单道系统中该两个作业被选中时的响应比各为多少?
解:9:00时,作业A的响应比=1+2/0.8=3.5
作业B的响应比=1+0.5/0.1=6
所以9:00时作业调度程序选中作业B
9:06作业B结束,调度作业A,此时作业A的响应比=1+2.1/0.8=3.625
综上可知,在单道系统中A、B两个作业被选中时的响应比分别为3.625和6
2、某系统有A,B,C三类资源(数量分别为17,5,20)和P1~P5五个进程,在T0时刻系统状态如下表所示:
进程 P1 P2 P3 P4 P5 最大资源需求量 A 5 5 4 4 4 B 5 3 0 2 2 C 9 6 11 5 4 已分配资源数量 A 2 4 4 2 3 B 1 0 0 0 1 C 2 2 5 4 4 系统采用银行家算法实施死锁避免策略,请回答下列问题: ①T0时刻是否为安全状态?若是,请给出安全序列。
②在T0时刻若进程P2请求资源(0,3,4),是否能实施资源分配?为什么? ③在②的基础上,若进程P4请求资源(2,0,1),是否能实施资源分配?为什么?
解:① 由已知条件可得尚需矩阵Need和可用资源向量Avalable如下:
Need Avalable A B C A B C P1 3 4 7 2 3 3 P2 1 3 4 P3 0 0 6 P4 2 2 1 P5 1 1 0
利用银行家算法对此时刻的资源分配情况进行分析如下表: 进程 P4 P2 P3 P5 P1 Work 2 3 3 4 3 7 8 3 9 12 3 14 15 4 18 Need 2 2 1 1 3 4 0 0 6 1 1 0 3 4 7 Allocation 2 0 4 4 0 2 4 0 5 3 1 4 2 1 2 Work+Allocation Finish 4 3 7 8 3 9 12 3 14 15 4 18 17 5 20 true true true true true 从上述分析可知,存在一个安全序列P4,P2,P3,P5,P1,故T0时刻系统是否安全的。 ② 在T0时刻若进程P2请求资源(0,3,4),不能实施资源分配。因为当前C类资源剩余3个而P2请求4个,客观条件无法满足它的请求,因此不能实施资源分配,P2阻塞。
③ 在②的基础上,若进程P4请求资源(2,0,1),可以实施资源分配。因为由①可知,P4是安全序列中的第一个进程,只要P4的请求量没有超出它的尚需量,系统满足它的请求后仍处于安全状态,即仍然存在安全序列P4,P2,P3,P5,P1。