首页 > 试题广场 >

下列关于银行家算法的叙述中,正确的是()。

[单选题]

下列关于银行家算法的叙述中,正确的是()。

  • 银行家算法可以预防死锁
  • 当系统处于安全状态时, 系统中一定无死锁进程
  • 当系统处于不安全状态时, 系统中一定会出现死锁进程
  • 银行家算法破坏了死锁必要条件中的“ 请求和保持” 条件
死锁的必要条件有:
1、互斥条件(任一时刻一个资源仅为一个进程独占)
2、占有且等待条件
3、不剥夺条件(任一进程不呢从其他资源处抢夺资源)
4、循环等待条件(存在一个循环等待链)
死锁的发生必定有上述四个条件的同时成立,同理,只要破坏四个条件中的任何一个就可预防死锁的发生

A-->“死锁的预防”是破坏四个必要条件的任何一个;“死锁的避免”是掌握系统中并发进程的状态和与这些进程有关的资源动态申请情况,做出合理选择,避免死锁的发生,“银行家算法”属于“死锁的避免”
C-->“不安全状态”并不一定导致死锁的发生
D-->“银行家算法”属于死锁的避免,没有破坏死锁发生的四个必要条件中的任何一个
发表于 2017-11-06 10:17:55 回复(0)
银行家算法是著名的死锁避免算法,避免死锁并不是事先采取某种限制措施破坏死锁的必要条件,而是再资源动态分配过程中,防止系统进入不安全状态,以避免发生死锁
发表于 2016-11-25 18:41:26 回复(3)
死锁避免是操作根据进程资源请求,合理分配资源,从而避免死锁发生,如银行家算法。因为进程资源请求未知,所以本质上是不可能的。
死锁预防是破坏死锁发生的条件,从而达到避免死锁的发生:1.破坏互斥条件2.破坏占有和等待条件3.破坏不可抢占条件4.破坏环路等待条件
发表于 2017-03-13 22:22:18 回复(0)
死锁避免是操作根据进程资源请求,合理分配资源,从而避免死锁发生,如银行家算法。因为进程资源请求未知,所以本质上是不可能的。
死锁预防是破坏死锁发生的条件,从而达到避免死锁的发生:1.破坏互斥条件2.破坏占有和等待条件3.破坏不可抢占条件4.破坏环路等待条件
发表于 2017-03-06 16:34:17 回复(0)
银行家算法是死锁避免算法,主要是利用资源动态分配合理使用资源。
编辑于 2019-11-28 13:39:02 回复(0)
避免死锁:银行家算法
预防死锁:破坏四个必要条件之一
发表于 2019-07-25 10:11:59 回复(0)
2.1 产生死锁的四个必要条件: 
(1) 资源互斥(互斥条件):一个资源每次只能被一个进程使用。 
(2) 占用并等待资源(请求与保持条件):一个进程因请求资源而阻塞时,对已获得的资源保持不放。 
(3) 资源不可抢夺(不剥夺条件):进程已获得的资源,在末使用完之前,不能强行剥夺。 
(4) 循环等待资源(循环等待条件):若干进程之间形成一种头尾相接的循环等待资源关系。 
这四个条件是 死锁的必要而非充分条件条件 ,只要系统发生死锁,这些条件必然成立,而只要上述条件之 一不满足,就不会发生死锁。 
发表于 2019-08-12 09:42:26 回复(0)
楼上为什么只是复制一遍?

安全就一定不会死锁?不安全就不一定死锁?为什么?怎么没人问
发表于 2021-07-07 19:28:39 回复(0)
死锁的避免和预防不是一个东西,银行家算法是为j避免
发表于 2021-05-20 13:40:00 回复(0)
银行家算法属于死锁避免,并不是死锁预防故A错了
当系统处于不安全状态时,可能会出现死锁状态,也可能不出现死锁状态.故C错
死锁预防中的静态资源分配破坏了死锁的必要条件中的请求和保持的。故D错。
所以B为正确
发表于 2019-08-16 17:20:57 回复(0)
银行家算法不是预防死锁,而是预测死锁。它仅仅是预测死锁的可能性并确保永远不会出现这种可能性。
发表于 2017-09-08 17:13:14 回复(0)
A 银行家算法可以预防死锁  为什么错了
发表于 2017-06-18 16:01:31 回复(2)
银行家算法是著名的死锁避免算法,避免死锁并不是事先采取某种限制措施破坏死锁的必要条件,而是再资源动态分配过程中,防止系统进入不安全状态,以避免发生死锁
发表于 2017-04-19 20:16:37 回复(0)