若某系统中有3个并发进程,各需要4个同类资源,则该系统不会产生死锁的最少资源总数应该是
A、9个
B、10个
C、11个
D、12个
【正确答案】:B
【题目解析】:本题考查多道程序系统中的死锁基础知识。
死锁是指多个进程因竞争系统资源或相互通信而处于永远阻塞状态,若无外力作用,这些进程都无法向前推进。死锁的产生与资源的使用相关,死锁产生的原因之一就是资源竞争,如果系统中只有一个进程在运行,所有资源为一个进程独享,则不会产生死锁现象。
死锁产生的另外一个原因是进程的推进顺序不当,竞争资源虽然可能导致死锁,但是资源竞争并不等于死锁,只有在进程运行顺序不当的时候才会出现死锁。死锁产生的必要条件包括:互斥条件、不剥夺条件、请求和保持条件、循环等待条件,当发生死锁时候,这四个条件必须都满足。
在本题目中,当有三个并发进程同时对资源进行申请时,最可能发生死锁的情况是三个进程当前各自都占据了3个资源,此时,只再需要1个该类资源,即可以在这种情况下不发生死锁。