第4章并行性:互斥和同步全解.ppt

第4章并行性:互斥和同步全解

主要内容 顺序程序设计和并行程序设计 进程间的同步与互斥 信号量 (P,V操作) 同步机构应用 进程间的通讯 (2) 举例 [例2]. 两个进程合作完成数据计算和打印工作,计算进程未计算完就不可打印,反之亦然,双方共用一个缓冲区,写出此算法。 [分析]:合作同步 CP未写,PP取数无意义 PP未读,CP不能再放入(写)。 计算进程 打印进程 Buffer SA SB 写 读 CP PP CP PP 解:信号量:SA ––– 缓冲区是否有结果 SB ––– 缓冲区中数据是否已取走 初值:SA: = 0 SB: = 1 begin SA: = 0; SB: = 1; Cobegin CP: repeat send P(SB); {看看被取走否?SB=SB–1(当SB0} “ 计算下一数,进入缓冲区” V(SA); {已有结果,可置标志,SA=SA+1} forever PP: repeat P(SA); {已放入结果否?} “ 从缓冲区中取数” receive

文档评论(0)

1亿VIP精品文档

相关文档