一、PV操作的原则
P操作:相当于请求资源、输入
V操作:相当于释放资源、输出
-
在单一进程内部,由 P操作 —> V操作
1、P:请求到资源 (相当于程序输入)
2、执行…
3、V:释放资源 (相当于程序的输出)
-
在两个进程之间,由 V操作 —> P操作
1、V:一个进程释放了资源
2、P:另一个进程可以申请该资源
-
起始进程:只有 V操作(输出),没有 P操作(输入)
相当于程序只出不进
-
终止进程:只有 P操作(输入),没有 V操作(输出)
相当于程序只进不出
-
前趋图中信号排序规则:从左到右、从上到下,依次为1、2、3…
二、案例分析
1、案例
2、分析
1)先标信号S
按照从左到右、从上到下
如果两条线的起点相同,就比较终点;终点在上或在前的,就排在前面
2)依次分析每个进程
原则:
初始进程,只有V,没有P
终止进程,只有P,没有V
进程内,从P到V
进程间,从V到P
一个进程有几个输入,就有几个P;有几个输出,就有几个V
-
P1
初始进程:只有V
有两个输出S1、S2,所以V为:V(s1)、V(s2)
-
P2
一个输入S1,两个输出S3、S4
所以P为:P(s1),V为:V(s3)、V(s4)
-
P3
两个输入S2、S3,两个输出S5、S6
所以P为:P(s2)、P(s3),V为:V(s5)、V(s6)
-
P4
两个输入S4、S5,一个输出S7
所以P为:P(s4)、P(s5),V为:V(s7)
-
P5
一个输入S6,一个输出S8
所以P为:P(s6),V为:V(s8)
-
P6
终止进程,只有P,没有V
两个输入S7、S8
所以P为:P(s7)、P(s8)