文档库 最新最全的文档下载
当前位置:文档库 › 处理机调度与死锁习题课

处理机调度与死锁习题课

处理机调度与死锁习题课
处理机调度与死锁习题课

第三章处理机调度与死锁

1系统出现死锁是因为 (若干进程因竞争资源而无休止的等

待着其他进程释放已占有的资 源)。

2、某系统中有5个并发进程,都需要同类资源 数是(11

4个并发进程,都需要同类资源 3个,试问该系统不会发生死锁的最少资源

10、什么是死锁?产生死锁的必要条件是什么?处理死锁的基本方法有哪些?

答:死锁是两个或两个以上进程由于竞争资源而处于的僵持状态,在这种僵持状态下若 没有外力作用,所有进程都无法正常向前推进。

必要条件:(1)互斥条件(2)请求和保持条件(3)不剥夺条件(4)环路等待条件 处理方法:预防死锁、避免死锁、检测死锁、解除死锁。

11、死锁定理的含义是什么?试简化下图进程-资源图,

3、发生死锁现象的原因有 竞争资源

进程推进顺序非法

通常不采用( 从非死锁进程处抢夺资源 )方法来解除死锁。

数是(9)。 5、死锁产生的 不可剥夺

—互斥 ______

和环路等待条件。

6、 作业在系统中存在与否的唯一标志是作业控制块

7、 某计算机系统中有 8台打印机,有K 个进程竞争使用,每个进程最多需要3台打印机.该系 统可能会发生死锁的 K 的最小值是(4 ) 8、 产生系统死锁的原因可能是由于 (多个进程竞争资源出现了循环等待) 9

、 系统中有3个进程,每个进程需 2台打印机,如果系统配有 4台打印机,则系统 不可能 ___________ 出现死锁的情况(本题要判断出现死锁的可能性:可能或不可能)

4个必要条件是:

请求和保持 ___

3个,试问该系统不会发生死锁的最少资源

4、某系统中有

并利用死锁定理给出相应的结论。

R2

答:死锁定理:当且仅当资源分配图是不可完全简化的。

R1 资源有3个,R2资源有2个;P1进程:占有2个R1,申请1个R2; P2进程占有1个R1, 1

个R2, 申请1个R1; 目前系统只有一个 R2空闲;P1是一个既不孤立又不阻塞的进程,消去 P1

的边, 有2个R1,1个R2空闲,能满足P2申请,使P2成为既不孤立又不阻塞的进程,所以消去

P2的边,由死锁定理知,不会产生死锁。

12、4个进程的提交、运行时间如下表所示。若采用( 1)先来先服务算法;(2)最高响应

比优先调度算法,试求出进程的执行顺序,进程的开始时间、 平均周转时间。

P4 响应比=1+(10-9)/=6 因为P3响应比最高,所以执行进程

响应比=1+ P4 响应比=1+/= 因为P2响应比最高,所以执行进程 平均周转时间=(+++)/4= ( 1分) 13、设系统中有 3中类型的资源(A,B,C )和5个进程P1、P2、P3 P4、P5, A 类

资源的数

目为17, B 类资源的数目为5,C 类资源的数目为 20。在T o 时刻系统状态如下表所示。系统 采用银行家算法实施死锁避免策略。

答:(1 )先来先服务算法 3分 平均周转时间=(2+++) /4 =( 1分) (2)最高响应比优先调度算法

3分

a. P2 响应比=1+/= P3 响应比=1+ () /=15 完成时间、周转时间及进程的 2 ; (2分)

进程

资源情况

Max

A B C

Allocati on Available A B C

A B

C

P1 5 5 9 2 1 2

2 3 3

P2 5 3 6 4 0 2

P3 4 0 11 4 0 5

P4 4 2 5 2 0 4

P5

4 2 4

3 0 4

) o 时刻是否为安全状态?若是,给出安全序列。

(2)若在T o 时刻进程P2请求资源(0, 3, 4),是否能实施资源分配?为什么?

解答:1)由题目所给出的最大资源需求量和已分配的资源数量, 可以计算出TO 时刻各进程

的资源需求量Need , Need= Max-Allocation ,利用银行家算法对 TO 时刻的资源分配情况进 行分析,可得此时的安全性分析情况,如下表:

态是安全的。(8分)

源数(2, 3, 3 ),所以不能分配。(2分)

资源情况

进程

Allocati on (已分配资源数)

Need (还需要资源数)

Available (系统可以分配资源

数)

PO 0 0 3 2 0 0 1 2

1 6

2 2

P1 1 0 0 0 1 7 5 0

P2

1 3 5 4

2 3 5 6

P3 0 3 3 2 0 6 5 2

资源情况

Work Need Allocati on

Work+Allocati on

Fin 进程、

A B C

A B C A B C A B C ish P5 2 3 3 1 1 0 3 1 4 5 4 7 T P4 5 4 7 2 2 1 2 0 4 7 4 11 T P3 7 4 11 0 0 6 4 0 5 11 4 16 T P2 11 4 16 1 3 4 4 0 2 15 4 18 T P1

15 4 18

3 4 7

2 1 2

17 5 20

T

(2)若在T o 时刻进程P2请求资源(0,3,

4),因请求资源数(O ,3, 4)大于剩余资

14、若系统运行中出现如下表所示的资源分配情况,

该系统是否安全?若是, 给出安全序列;

从T o 的安全性分析中可以看出,存在一个安全序列

{ P5 P4、P3 P2、P1},故 T o 时刻的状

P4 0 0 1 4 0 6 5 6

答:()禾用安全性算法对此刻的资源分配情况进行如下表的安全性检:

15、系统中有四个进程{ P0 , P1 , P2 , P3 }

和三类资源{A , B , C },各种资源的数量分

别为10,5,5,在TO 时刻的资源分配情况如图所示,且已知 TO 时刻处于安全状态。在 T1

时刻,如果进程 P1发出请求向量 Request1(1,0,2),试用银行家算法说明系统能否将资源 分配给它?

、资源情况

Max Allocatio Need Available

资源情况 进程

Work Need Allocati on

Work+Allocatio

n

P0 1 6 2 2 0 0 1 2 0 0 3 2 1 6 5 4 P3 1 6 5 4 0 6 5 2 0 3 3 2 1 9 8 6 P4 1 9 8 6 0 6 5 6 0 0 1 4 1 9 9 10 P1 1 9 9 10 1 7 5 0 1 0 0 0 2 9 9 10 P2

2 9 9 10

2 3 5 6

1 3 5 4

3 12 1

4 14

从表中可以看出,此时存在一个安全序列 {P0,P3,P4,P1,P2},故系统是安全的。(7分)

(2)

P2请求资源(1,2,2,2)<= P2需求资源(2,3,5,6)&<=剩余资源数(1,6,

2, 2)

<=

进程

资源情况

Allocati on Need Available

P0 0 0 3 2 0 0 1 2

0 4 0 0

P1 1 0 0 0 1 7 5 0

P2 2 5 7 6 1 1 3 4

P3 0 3 3 2 0 6 5 2

P4

0 0 1 4

0 6 5 6

此时,可利用资源(0,4,0,0)已不能满足任何进程的需要,故系统进入不安全状态,故 不能将资源分配给 P2。

答:进程P i发出请求向量Request 1(1,0,2),系统按银行家算法进行检查:

(1) Request 1(1,0,2) < Neecli (1,2,2) ; (1 分) (2) Request 1(1,0,2) < Available (3,3,2) ; (1 分)

(3)系统先假定可为 P i 分配资源,并修改 Available 1,Allocation , Need 向量,由此形成

的资源变化情况如表所示:

有所进行的安全性检查得知,可以找到一个安全序列 安全的,可以立即将

R 所申请的资源分配给它。

(4)再利用安全

{ P l , P 3, P O , P 2 , }。因此系统是 (3

相关文档