进程 同步、互斥
进程之间的关系主要有两种,同步与互斥。
互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
PV信号量实现互斥:
S = 0;
进程1:
P(S)
...... //对资源进行操作
V(S)
进程2:
P(S)
...... //对资源进行操作
V(S)
同步:是指在互斥的基础上,通过其它机制实现访问者对资源的有序访问。
PV信号量实现同步:
S1 = 1;
S2 = 0;
进程1:
P(S1)
...... //对资源进行操作
V(S2)
进程2:
P(S2)
...... //对资源进行操作
V(S1)