PV操作参考程序.docVIP

  • 32
  • 0
  • 约 6页
  • 2018-05-10 发布于重庆
  • 举报
PV操作参考程序

11、有3个并发进程R、M、P,它们共享同一缓冲区。进程R负责从输入设备读信息,每读入一个记录后,就把它放入缓冲区中;进程M在缓冲区中加工读入的记录;进程P把加工后的记录打印输出。读入的记录经加工输出后,缓冲区又可以存放下一个记录。试写出它们能够正确执行的并发程序。 答: Begin a:=0;b:=0;c:=1; cobegin R: begin Repeat P(c); 从输入设备读一记录到缓冲区; V(a); Until false End; M: begin Repeat P(a); 在缓冲区中加工读入的记录; V(b); Until false End; P: Begin Repeat P(b); 打印加工后的记录; V(c); Until false End Coend End; 注:为了保证R首先执行,所以信号量c的初值应设为“1”。此外,由制约关系图可以看出,R、M和P不会竞争缓冲区资源,故无需设置用于互斥的公用信号量。 12、设有进程A、B、C,分别调用过程get、copy和put对缓冲区S和T进行操作。其中get负责把数据块输入缓冲区S,copy负责从缓冲区S中提取数据块复制到缓冲区T中,put负责从缓冲区T中取信息打印,如图所示。试描述get、copy及put的操作过

文档评论(0)

1亿VIP精品文档

相关文档