A-A+
某系统有三个进程P1 P2 P3并发工作 其中P1执行过程中需要使用资源S3 S1;P2需要
问题详情
某系统有三个进程P1,P2,P3并发工作,其中P1执行过程中需要使用资源S3,S1;P2需要使用资源S1,S2;P3需要使用资源S2,S3。
(1)如果进程推进过程中对资源分配不加以限制,会导致什么结果,为什么?
(2)如何避免这种后果,列出所有可能的方法。请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:(1)可能会发生死锁。例如进程P1P2和P3分别占有了资源S3S1和S2若各进程再申请资源会导致循环等待即发生了死锁。(2)可以采用静态分配、按序分配、分配前检测、强行剥夺资源或采用银行家算法等方法消除死锁。
(1)可能会发生死锁。例如,进程P1,P2和P3分别占有了资源S3,S1和S2,若各进程再申请资源会导致循环等待,即发生了死锁。(2)可以采用静态分配、按序分配、分配前检测、强行剥夺资源或采用银行家算法等方法消除死锁。