计算机操作系统第二章习题第三题的第一题
1、假定系统有3个并发进程PA、PB、PC共享缓冲池B1和B2.进程PA负责从输入设备上读信息,每读出一次数据后把它放到缓冲池B1的缓冲区中,进程PB从缓冲池B1中取出一缓冲区的内容,经加工后放入缓冲池B2中,进程PC2将PB2中的数据取出并打印.设缓冲池B1和B2中缓冲区的个数分别为m和n.要求3个进程协调完成任务,使打印出来的信息与读入记录的个数、次序完全一样.
请用P、V操作,写出这3个进程的并发程序.
semaphore empty1,full1,empty2,full2,mutex1,mutex2;
empty1=m;empty2=n;full1=full2=0;
mutex1=mutex2=1;
parbegin
process PA{
while(1){
从输入设备上读信息;
P(empty1);
P(mutex1);
将读入的信息放入B1;
V(mutex1);
V(full1);
}
}
process PB{
while(1){
P(full1);
P(mutex1);
从B1中取出一缓冲区内容;
V(mutex1);
V(empty1);
加工内容;
P(empty2);
P(mutex2);
将加工后的内容放入B2;
V(mutex2);
V(full2);
}
}
process PC{
while(1){
P(full2);
P(mutex2);
从B2中取出内容;
V(mutex2);
V(empty2);
打印内容;
}
}
parend
-
点赞数:0回答数:2
-
点赞数:0回答数:1
-
点赞数:0回答数:4
-
点赞数:0回答数:4
-
点赞数:0回答数:1
-
点赞数:0回答数:5
-
点赞数:0回答数:2
-
点赞数:0回答数:1
-
点赞数:0回答数:1
-
点赞数:0回答数:1

最新问答: 列文虎克 罗伯特胡克 什么关系,是子代和亲代的关系么…… 旧时干谢堂前燕,下句是什么 聪聪在对方程2x-1/3=x+a/3-1去分母时,方程右边的1没有乘以3,因而求得的解是x=2,试求a的值,并求出方程的 次氯酸中的氯几价? AABC的四字词语 钱塘湖春行原文 已知三角形三条边的长度,如何求高? 为什么青蛙对动的物体很敏感但对静止的物体就没感觉 这几个单词有什么区别啊?catastrophe,calamity,misfortune,deseaster 请让自己幸福 用英语怎么说 sat语法题The Sun has been shining for 【nearly (A)】 five billion 正确的操作能保证实验顺利进行.请填写下列有关实验操作中的空格: 如果地球像足球大小,那宇宙像什么大小 有一些相同的房间需要粉刷,一天3名师傅去粉刷8个房间,结果其中有40㎡墙面未来得及刷,同样的时间内 一个长方形的跳远沙坑,长6米,宽4米,深0.5米,这个沙坑的占地面积是多少 4.建造一个长方体游泳池,长是30m,宽是15m,深是1.6m.在池子的底面和四壁砌瓷砖,如果每平方米需要25块,共需要 非酸性环境中的高锰酸根能把负一价的氯离子氧化成氯气吗? 2010除以2010又2011分之2010等于多少 我们想知道后天天气如何用英语怎么说 抛物线y=-x2-2x+m,若其顶点在x轴上,则m=______.