早教吧作业答案频道 -->其他-->
操作系统习题求解有三个进程PA,PB,PC合作解决文件打印问题,PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录,PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录,PC将缓冲
题目详情
操作系统习题求解
有三个进程PA,PB,PC合作解决文件打印问题,PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录,PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录,PC将缓冲区2的内容打印出来,每执行一次打印一个记录,缓冲区的大小等于一个记录大小,请用P,V原语操作来描述文件的正确打印.(编程题)
有三个进程PA,PB,PC合作解决文件打印问题,PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录,PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录,PC将缓冲区2的内容打印出来,每执行一次打印一个记录,缓冲区的大小等于一个记录大小,请用P,V原语操作来描述文件的正确打印.(编程题)
▼优质解答
答案和解析
semaphore empty1,full1,empty2,full2;
empty1=empty2=1;full1=full2=0;
parbegin
process PA{
while(1){
从输入设备上读信息;
P(empty1);
将读入的信息放入B1;
V(full1);
}
}
process PB{
while(1){
P(full1);
从B1中取出一缓冲区内容;
V(empty1);
P(empty2);
将B1中的内容复制到B2;
V(full2);
}
}
process PC{
while(1){
P(full2);
从B2中取出内容;
V(empty2);
打印内容;
}
}
parend
empty1=empty2=1;full1=full2=0;
parbegin
process PA{
while(1){
从输入设备上读信息;
P(empty1);
将读入的信息放入B1;
V(full1);
}
}
process PB{
while(1){
P(full1);
从B1中取出一缓冲区内容;
V(empty1);
P(empty2);
将B1中的内容复制到B2;
V(full2);
}
}
process PC{
while(1){
P(full2);
从B2中取出内容;
V(empty2);
打印内容;
}
}
parend
看了 操作系统习题求解有三个进程P...的网友还看了以下:
如图,P为△ABC点,<APB=<BPC,将△ABP绕B点旋转60度到△A'BP',此时A',P' 2020-04-26 …
25°C 将Va mL PH=5的醋酸溶液与PH=9的NaOH溶液混合 化学高手进25°C 将Va 2020-05-17 …
考察队从营地p处出发,沿北偏东60度前进5千米到达A地,再沿东南方向前进到C,C地恰好在p地的正东 2020-05-21 …
若有以下定义和赋值double*q,a=5.5;int*p,i=1;double*q,a=5.5; 2020-07-09 …
已知三角形的三边长分别为a、b、c,求其面积问题,中外数学家曾经进行过深入研究,古希腊的几何学家海 2020-07-20 …
下列关于使用固定化酶技术生产高果糖浆的说法,正确的是()A.高果糖浆的生产需要使用果糖异构酶B.在反 2020-11-05 …
在实验室和生产生活中,安全是避免伤害和事故的保障.下列处理方法不正确的是()A.金属钠着火时立即用沙 2020-11-06 …
概率论达人进!P(A)=0.6,P(C)=0.2,P(AC)=0.1,P(B|C非)=0.7,且A属 2020-11-08 …
一道概率论的题目,达人们速度进啊++++++++++++分不多,请大家帮个忙,P(A)=P(B)=P 2020-11-08 …
我国成功爆炸第一颗原子弹的意义在于向世界宣告我们()A.将开始争霸世界B.将实施战略进攻C.将实施战 2020-12-19 …