<">
<">

有2个并发进程P1和P2,它们都要使用临界资源A和B。为了实现对上述资源的互斥访问,可定义2个信号量mutexA和mutexB分别对应于资源A和B。P1和P2进程的程序如下:

<

有2个并发进程P1和P2,它们都要使用临界资源A和B。为了实现对上述资源的互斥访问,可定义2个信号量mutexA和mutexB分别对应于资源A和B。P1和P2进程的程序如下:


请回答以下问题:
(1)上述2个并发进程P1和P2会不会产生死锁问题?
(2)如果会产生死锁问题,如何修改进程的程序,使得不会产生死锁?如果不会产生死锁,请说明理由。


【正确答案】:(1)有可能会发生死锁。(2分)
(2)交换P2程序中的两个P操作的顺序。或者:交换P程序中的两个P操作的顺序。或者:两个进程对应的两个P操作申请资源的顺序要一致。(2分)
Top