在下列选项中,属于预防死锁的方法是( )。
A.剥夺资源法 B.资源分配图简化法
C.资源静态分配 D.银行家算法
A选项不是解决死锁吗?
预防死锁
避免死锁
检测死锁
解除死锁
通过设置一些限制条件,去破坏产生死锁的必要条件 1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。 2)请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。 3)不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。 4)环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,···,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……,Pn正在等待已被P0占用的资源。
通过设置一些限制条件,去破坏产生死锁的必要条件
1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。
2)请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。
3)不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。
4)环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,···,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……,Pn正在等待已被P0占用的资源。
在资源分配过程中,使用某种方法避免系统进入不安全的状态,从而避免发生死锁 如银行家算法
在资源分配过程中,使用某种方法避免系统进入不安全的状态,从而避免发生死锁
如银行家算法
允许死锁的发生,但是通过系统的检测之后,采取一些措施,将死锁清除掉 死锁检测主要依赖于资源分配图和检测算法。对于单个资源的每个实例,我们可以使用一种简单的方法,即“等待图”来检测死锁。等待图是一个有向图,其中节点表示进程,边表示等待。如果图中存在一个环,那么就发生了死锁。
允许死锁的发生,但是通过系统的检测之后,采取一些措施,将死锁清除掉
死锁检测主要依赖于资源分配图和检测算法。对于单个资源的每个实例,我们可以使用一种简单的方法,即“等待图”来检测死锁。等待图是一个有向图,其中节点表示进程,边表示等待。如果图中存在一个环,那么就发生了死锁。
该方法与检测死锁配合使用
解除死锁法:剥夺资源法,撤销进程法,进程回退法。
死锁预防:破坏互斥条件,破坏不剥夺条件,破坏请求并保持条件,破坏循环等待条件。
会不会是剥夺资源法也算破坏了不剥夺条件,能解除死锁也能预防死锁
死锁预防:确保系统永远不会死锁 (方式:限制申请) 死锁避免:在使用前进行判断,只允许不会出现死锁的进程请求资源 (方式:银行家算法) 死锁检测:在检测到运行系统进入死锁状态后,进行恢复 (方式:死锁检测算法)
C应该改为顺序分配
答案应选D
xiaoyang 回复 rem: 银行家算法是避免死锁,不是预防
A.解除死锁
B.检测死锁
C.没看懂
D.避免死锁
C
B....
用户登录可进行刷题及查看答案
C.预防死锁
登录后提交答案