正在加载图片...
3、信号量和PV操作(续) 5、用PV操作实现进程之间的同步一! 三个并发进程 进程gt从输入设备上读数据,存入 Get Copy Put Buffer1;进程copy不断将Buffer1中的内 容复制到Buffer2;进程put将Buffer2中的 内容打印输出。三个进程必须协调同步, 设4个信号量S1、S2、S3、S4,S2S3表示 S Buffer12和Buffer2是否装满数据;S1,S, 表示Buffer1、Buffer2是否为空,初值为 Bufferl Buffer2 S1=1;S2=0;S3=0;S4=1,如右图: 同步模型如下所示: 进程get 进程copy 进程put + P(S): P(S2): P(S): P(S); ↓ 从输入设备读数据存 将Bufferl的内容复 将缓冲区Buffer2数 入Bufferl: 制到Buffer2; 据打印输出: V(S) V(S,); v(S3: V(s,): 电子科技大学刘民岷 进程同步和互斥 8电子科技大学 刘民岷 8 3、信号量和PV操作(续) 进程同步和互斥 5、用PV操作实现进程之间的同步——三个并发进程 • 进程get从输入设备上读数据,存入 Buffer1;进程copy不断将Buffer1中的内 容复制到Buffer2;进程put将Buffer2中的 内容打印输出。三个进程必须协调同步, 设4个信号量S1、S2、S3、S4,S2,S3表示 Buffer1和Buffer2是否装满数据;S1,S4 表示Buffer1、Buffer2是否为空,初值为 S1=1;S2=0;S3=0;S4=1,如右图: Buffer1 Buffer2 Get Copy Put S1 S2 S4 S3 同步模型如下所示: 进程get P(S1); 从输入设备读数据存 入Buffer1; V(S2) 进程copy P(S2); P(S4); 将Buffer1的内容复 制到Buffer2; V(S1); V(S3); 进程put P(S3); 将缓冲区Buffer2数 据打印输出; V(S4);
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有