首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
admin
2019-08-15
51
问题
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有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; cobegm 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); 离开阅览室: } eoend (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 readercome(readername) begin check(IM); if seatcount≥100 wait(R,IM) seatcount:=seatcount+1: for i=l to 100 d0 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 j=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=l,2.…) begin readercome(readername); read the book; readerleave(readername); leave the readroom: end coend
解析
转载请注明原文地址:https://kaotiyun.com/show/tiCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
“瓜步之战”发生在下列哪两个政权之间?()
中世纪战争史上有过两次君士坦丁堡陷落,分别简述其发生的时间、征战的双方、导致的历史变动。
下列各组条约的时间排列顺序正确的是()。①《布列斯特条约》②《色佛尔条约》③《九国公约》④《洛桑条约》
周王室的两大官僚系统是()。
洋务运动时期,首批赴欧海军留学生派出的时间是()。
一个TCP连接总是以1KB的最大段发送TCP段,发送方有足够多的数据要发送。当拥塞窗口为16KB时发生了超时,如果接下来的4个RTT(往返时间)时间内的TCP段的传输都是成功的,那么当第4个RTT时间内发送的所有TCP段都得到肯定应答时,拥塞窗口大小是
在操作系统中,P,V操作是一种()。
设计一个算法,求无向图G(采用邻接表存储)的连通分量个数。
某系统中n个相互独立的生产者进程为一个消费者进程提供数据,假设每个生产者提供的数据写入各不相同的缓冲区,且生产者写缓冲区的速度比消费者读缓冲区的速度快,则缓冲区个数的最优值应为()。
随机试题
李将军广者,陇西成纪人也。天子使中贵人(按:中贵人即宦官)从广勒习兵击匈奴。中贵人将骑数十纵,见匈奴三人,与战。三人还射,伤中贵人,杀其骑且尽。中贵人走广。广曰:“是必射雕者也。”广乃遂从百骑往驰三人。广身自射彼三人者,杀其二人,生得一人,果匈奴射雕者也。
项目管理中,最易为人接受和采用的措施是()。
4月8日某投资者以46元吨卖出一张(200吨)执行价格为850元/吨的9月小麦看跌期权,当日期货结算价为875元/吨(上一交易日为864元/吨),期货交易保证金按照5%收取,则当日应从其结算准备金账户划出的交易保证金应为()元。
羊群行为产生原因包括()。Ⅰ.推卸责任的需要Ⅱ.信息不完全Ⅲ.减少恐惧的需要Ⅳ.缺乏知识经验
上市公司通过()形式向投资者披露其经营状况的有关信息。
甲公司为向乙公司支付货款,向其签发了一张金额为100万元的转账支票,付款人为甲公司的开户银行A银行,保证人为B银行。根据票据法律制度的规定,下列选项中,不属于该支票基本当事人的是()。
在企业决定其财务职能的集中程度时,应先考虑不同财务职能的集中程度所伴随着的利弊。权力下放的优点包括()。
Paul:Peter,whydon’tyoucometoMary’sbirthdaypartywithus?Peter:______
下列遗嘱中,属于无效遗嘱的是()
Asurprisinglinkbetweenchangesintheseasonandcrimepatternsimpliesthat______.WhatunusualthingisfoundinMay?
最新回复
(
0
)