死锁的问题

来源:百度知道 编辑:UC知道 时间:2024/05/13 14:24:56
设有两个进程A,B,各按如下的P-V操作实现进程同步,分析A,B进程运行中能否产生死锁,若会产生死锁,应如何改进?
进程A 进程B
P(s1) P(s2)
P(s2) P(s1)
V(s2) V(s1)
V(s1) V(s2)

当然可能
比如这样:A.P(s1) - B.P(s2) - A.P(s2) - 死锁

要避免死锁, 只要打乱其中的一个条件就可以了, 可以这样将顺序改变一下:
进程A 进程B
P(s1) P(s1) <- 注意顺序变了
P(s2) P(s2)
V(s2) V(s1)
V(s1) V(s2)