首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
admin
2019-08-15
45
问题
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有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
学硕统考专业
相关试题推荐
下列各组条约的时间排列顺序正确的是()。①《布列斯特条约》②《色佛尔条约》③《九国公约》④《洛桑条约》
周王室的两大官僚系统是()。
系统地阐明道家思想的著作《淮南鸿烈》,也叫《淮南子》,是汉武帝时()集宾客写成的。《淮南子》问世时,黄老思想在政治上已不占支配地位了。
洋务运动时期,首批赴欧海军留学生派出的时间是()。
下图是某模型机CPU的组成框图。设该CPU采用同步控制逻辑,分取指周期、取第一操作数周期,取第二操作数周期、执行周期四个机器周期,每个机器周期有T0、T1、T2三个节拍。试写出如下双操作数运算指令的微操作命令及节拍安排。ADDR0,(R1)完成功
下列选择中,()不是操作系统关心的主要问题。
某系统中n个相互独立的生产者进程为一个消费者进程提供数据,假设每个生产者提供的数据写入各不相同的缓冲区,且生产者写缓冲区的速度比消费者读缓冲区的速度快,则缓冲区个数的最优值应为()。
Demandpaging算法是paging算法在虚拟存储空间管理的扩展。其主要的改进是:仅当需要访问某页面时,如果它不在内存,把它调入内存。按照这个思路,将segmentation算法(段式存储管理算法)扩展到虚拟存储空间管理,也可以产生类似的算法,不妨
随机试题
计划工作的前提条件是()。
临床使用最广泛,固位、支持、稳定作用均较理想的卡环是游离端缺失,缺牙区牙槽嵴丰满,但末端基牙状况不理想时,应选用
喘证的特征悬饮的特征
属于五官科用的OTC药物为
有助于风险管理效率的提升,并产生一致、可比、可靠的结果,是风险管理原则的()的方法。
从我国会计工作实情出发,建立单位内部会计监督制度,应当遵循的原则有()。
( )是世界上最早、最享盛誉和最有影响的股票价格平均数。
甲公司对投资性房地产采用公允价值模式计量。甲公司有关房地产的相关业务资料如下:(1)2013年1月,甲公司自行建造办公大楼。在建设期间,甲公司购进为建造工程准备的一批物资,价款为2340万元。该批物资已验收入库,款项以银行存款支付。该批物资全部用于办公楼
不属于法律援助特点的是()。
保证金是期权交易者向()支付的履约保障资金。
最新回复
(
0
)