首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
admin
2019-08-01
55
问题
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
选项
答案
(1)使用信号量和P、V操作: var A:array[1..100]of Rec; Rec=record number:integer; name:string; end; i:integer; for i:=1 to 100 do{A[i].number:=i;A[i].name:=null;} mutex,seatcount:semaphore; //semaphore:信号量 mutex:=1;seatcount:=100: cobegin process readeri(var readername:string)(i=1,2,…){ P(seatcount); P(mutex); for i:=1 to 100 do{ i++; if A[i].name==null then A[i].name:=readername; //读者登记 } /*必须采用这种方式,因为该空位是随机产生的。我们无法知道哪个读者何时离开*/ V(mutex) 进入阅览室,座号i,坐下读书; P(mutex): //读书完毕,需要退场 A[i]name:=null; V(mutex); V(seatcount); 离开阅览室; } coend (2)使用管程操作: TYPE readbook=monitor VAR R:condition; i,seatcount:integer; name:array[1..100]of string; DEFINE readercome,readerleave; USE check,wait,signal,release; procedure readereome(readername) begin check(IM); if seatcount≥100 wait(R,IM) seatcount:=seatcount+1; for i=1 to 100 do i++ if name[i]==null then name[i]:=readername; get the seat number=i; release(IM); end procedure readerleave(readername) begin check(IM); seatcount一一; for i=1 to 100 do i++ if name[i]==readername then name[i]:=null; release(IM); end begin seatcount:=100;name:=null; end cobegin process readeri(i=1,2.…) begin readercome(readername); read the book; readerleave(readername); leave the readroom; end eoend
解析
转载请注明原文地址:https://www.kaotiyun.com/show/CkCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
制定出党在社会主义初级阶段基本路线的会议是()。
1922年2月,美、英、法、意、日五国通过了《五国海军条约》,规定了各国海军主力舰和航空母舰的限额,以及在东亚设置海军基地的要求等内容。该条约的缔结表明()
对1929—1933年的世界经济危机的特点,表述不正确的是()。
列宁在()报告中论证了在俄国实现和平过渡的可能性和必要性。
对于清政府在预备立宪的过程中的做法,表述不正确的是()
洋务运动期间,军事企业主要采取的方式是()。
()时,为补充兵力,开拓财源,“料民于太原”(今山西西南部)。料民就是清查民数,以便于征兵,结果引起奴隶和平民的反抗。这表明西周王朝已失去了对社会的控制力量。
1980-1987年撒哈拉以南非洲人均国民生产总值增长率为-2.9%。大部分国家经济急剧下滑,非洲的80年代被称“为失去发展的十年”。出现这现象关键原因在于这些国家
在二叉树的顺序存储中,每个结点的存储位置与其父结点、左右子树结点的位置都存在一个简单的映射关系,因此可与三叉链表对应。若某二叉树共有n个结点,采用三叉链表存储时,每个结点的数据域需要d个字节,每个指针域占用4个字节,若采用顺序存储,则最后一个结点下标为k(
“乘法减少”和“加法增大”各用在什么情况下?
随机试题
在宋代词坛上,周邦彦是()
秦始皇陵的兵马俑塑造于约【】
冷沉淀中第Ⅷ因子的收获率及活性与下列哪些项目有关系
患者,男性,35岁。因单位组织常规体检发现身体异常,拟诊肝硬化(代偿期)而收入院检查治疗。入院检查:BP110/70mmHg,神清,体检配合。巩膜无明显黄染。心肺未见明显异常。腹软,肝肋下1.5cm,脾肋下1.5cm。肝脾质地韧,压痛不明显。患者入院后,病
背景材料:某高速公路项目,全长45.5km,设计车速为120km/h。路面面层采用C30钢纤维水泥混凝土。该项目施工单位对面层的施工过程如下:第一步,该施工单位按要求进行水泥混凝土配合比设计,采用实验室确定的“实验室配合比”直接配料。第二步,施工单位
习近平总书记在2017年新年贺词中说,我们积极推进全面从严治党,坚定不移“打虎拍蝇”,继续()政治生态,党风、政风、社会风气继续好转。
过去。大多数航空公司都尽量减轻飞机的重量,从而达到节省燃油的目的。那时最安全的飞机座椅是非常重的,因此只安装很少的这类座椅。今年,最安全的座椅卖得最好。这非常明显地证明,现在的航空公司在安全和省油这两方面更倾向重视安全了。以下哪项,如果为真,能够最有力地削
(2004年)设f(χ)=,则f(χ)的间断点为χ=_______.
"Down-to-earth"meanssomeoneorsomethingthatishonest,realisticandeasytodealwith.Itisapleasuretofind【C1】______wh
PASSAGETHREEWhatdoestheword"sterling"inLine4ofParagraph1mean?
最新回复
(
0
)