首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有三个进程PA、PB和PC合作解决文件打印问题:PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录;PC将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录的大小。
有三个进程PA、PB和PC合作解决文件打印问题:PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录;PC将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录的大小。
admin
2019-08-01
58
问题
有三个进程PA、PB和PC合作解决文件打印问题:PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录;PC将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录的大小。请用P、V操作来保证文件的正确打印。
选项
答案
本题考查用P、V操作解决进程的同步互斥问题。 (1)进程PA、PB、PC之间的关系为:PA与PB共用一个单缓冲区,PB又与PC共用一个单缓冲区,其合作方式如下图所示。当缓冲区1为空时,进程PA可将一个记录读入其中;若缓冲区1中有数据且缓冲区2为空,则进程PB可将记录从缓冲区1复制到缓冲区2中;若缓冲区2中有数据,则进程PC可以打印记录。在其他条件下,相应进程必须等待。事实上,这是一个生产者一消费者问题。 [*] 为遵循这一同步规则。应设置4个信号量empty1、empty2、fulll、full2,信号量emptyl和empty2分别表示缓冲区1缓冲区2是否为空,其初值为1;信号量fulll和full2分别表示缓区1及缓冲区2是否有记录可供处理,其初值为0。 (2)相应的进程描述如下: semaphore emptyl=1: //缓冲区1是否为空 semaphore fulll=0: //缓冲区1是否有记录可供处理 semaphore empty2=1; //缓冲区2是否为空 semaphore full2=0: //缓冲区2是否有记录可供处理 cobegin{ process PA(){ while(TRuE){ 从磁盘读入一条记录: P(emptyl); 将记录存入缓冲区1; V(fulll); } } process PB(){ while(TRuE){ P(fulll); 从缓冲区1中取出一条记录; V(empty1): P(empty2); 将取出的记录存入缓冲区2; V(full2): } } process PC(){ while(TRUE){ P(full2): 从缓冲区2中取出一条记录; V(empty2); 将取出的记录打印出来: } } }coend
解析
转载请注明原文地址:https://www.kaotiyun.com/show/MVCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
下列不属于十一届三中全会过后对各方面社会关系的调整的是()
解放军渡江战役中横渡长江的东西两个攻击点是()。
下列不是春秋时代齐国管仲改革的内容的是()。
罗马在应用科学尤其是农艺学方面取得了较高的成就,其中《论农业》是研究罗马帝国初期奴隶制经济不可多得的历史文献,《论农业》的作者是()。
()是清代管理边疆少数民族地区事务的机关,也掌管一部分外交事务。
下列描述中,属于冯.诺依曼体系结构的特点是()。①采用流水线技术;②指令和数据均以二进制表示;③存储程序并且存储时不区别数据和指令。
如下图所示为一个网络连接的示意图,主机1到主机2采用了SLIP网络连接,SLIP网络可以传输的最大数据段是296字节,主机2和主机3使用了以太网连接。请问:(1)为了使IP不分片,主机1可以在TCP包中承载多少数据?(2)主机3可以在TCP包中承载多
著名的网络OSI七层模型是由()组织提出来的。
驱动调度算法中,()算法可能会随时改变移动臂的运动方向。
随机试题
(2012年4月)在提存公证中,公证机关以公告方式通知提存受领人的,公告期限为_______。
A.芦根B.知母C.天花粉D.淡竹叶E.栀子
A:回盲部切除术B:右半结肠切除术C:横结肠左半、降结肠和部分乙状结肠切除术D:左半横结肠、降结肠、乙状结肠和其系膜及淋巴结切除术E:乙状结肠部分切除术乙状结肠癌的手术方式
按我国《公司法》规定,清算组应当自成立之日起10日内通知债权人,并()在报纸上公告。
公安机关的首要任务不包括()。
根据下面材料回答下列小题。豆类作物产量占粮食作物总产量的比例比夏粮作物产量占粮食作物总产量的比例少多少个百分点?()
[*]
当x→0时,-1~cos2x-1,则a=________.
TurboC将对以下程序______。main(){intx,y;y=creat(&x):printf("%d\n",y);}creat(inta){returna++;
下列选项中,不属于计算机病毒特征的是()。
最新回复
(
0
)