问题标题:
续上题:三个并发进程R,M,P今有三个并发进程R,M,P,它们共享了一个可循环使用的缓冲区B,缓冲区B共有N个单元。进程R负责从输入设备读信息,每读一个字符后,把它存放在缓冲区B的
问题描述:
续上题:三个并发进程R,M,P
今有三个并发进程R,M,P,它们共享了一个可循环使用的缓冲区B,缓冲区B共有N个单元。进程R负责从输入设备读信息,每读一个字符后,把它存放在缓冲区B的一个单元中;进程M负责处理读入的字符,若发现读入的字符中有空格符,则把它改成“,”;进程P负责把处理后的字符取出并打印输出。当缓冲区单元中的字符被进程P取出后,则又可用来存放下一次读入的字符。请用PV操作为同步机制写出它们能正确并发执行的程序。
任光法回答:
ProcessP
Varx:char
Begin
L3:P(s3)
P(s)
x:=B[k]
k:=(k+1)modN
打印输出
V(s1)
V(s)
GotoL3
End
Coend
查看更多