安度因的剑:下列哪一个进程序列有可能发生死锁?(

来源:百度文库 编辑:高校问答 时间:2024/05/02 04:31:36
15.假设系统处于下列状态,目前系统剩余资源数量为2。下列哪一个进程序列有可能发生死锁?( )
进程 已占资源数 最大需求数
P1 1 2
P2 4 7
P3 3 5
P4 5 7
A)P1,P2,P3,P4
B)P2,P3,P4,P1
C)P3,P1,P2,P4
D)P4,P3,P2,P1

怎么做,教我?

如果P2先执行,它需要3个系统关键资源,而目前剩余的资源数为2,那么P2就会在第三个资源的入口处等待;接下来不管哪个程序执行,都会等待空闲资源的释放,进而发生死锁。B答案正确。
再来看A,进程P1先执行,它目前只需要1个资源,小于系统资源剩余数量2,可以顺利执行,P1执行完后释放所有系统资源,因而系统空闲资源变成3;接下来P2执行,3个空闲资源正好够P2用,P2执行完系统空闲资源变为7,足够P3、P4顺序执行;按照A答案的顺序不会发生死锁。
C、D答案同理,不解释。