首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试分别用信号量和P、V操作以及管程来实现用户进程的同步算法。
admin
2019-08-15
37
问题
有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有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://jikaoti.com/ti/zjGjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
中世纪战争史上有过两次君士坦丁堡陷落,分别简述其发生的时间、征战的双方、导致的历史变动。
周王室的两大官僚系统是()。
保加利亚共产党于1990年4月改名为保社会党,它在政府中沦为少数派的时间是()。
汉章帝会群儒于白虎观,讨论经义,由()写成《白虎通德论》(又称《白虎通义》、《白虎通》)一书,这部书系统地吸收了阴阳五行和谶纬之学,形成今文经学派的主要观点。
下图是某模型机CPU的组成框图。设该CPU采用同步控制逻辑,分取指周期、取第一操作数周期,取第二操作数周期、执行周期四个机器周期,每个机器周期有T0、T1、T2三个节拍。试写出如下双操作数运算指令的微操作命令及节拍安排。ADDR0,(R1)完成功
支持多道程序的操作系统,区别于其他操作系统的主要特征为()。
在请求页式系统中,一程序的页面走向(访问串或引用串)为2,3,4,5,2,3,6,2,3,4,5,6,设分配给该程序的存储块数为m。试分别计算m=3和m=4时,FIFO和LRU两种替换算法的缺页(页故障)数,并给出:结果说明了什么?
在操作系统中,P,V操作是一种()。
Demandpaging算法是paging算法在虚拟存储空间管理的扩展。其主要的改进是:仅当需要访问某页面时,如果它不在内存,把它调入内存。按照这个思路,将segmentation算法(段式存储管理算法)扩展到虚拟存储空间管理,也可以产生类似的算法,不妨
随机试题
产品定价需要考虑的因素不包括()
Word文档当前处于打印预览状态,若要打印文件
知名或较粗的血管结扎切断后所留下的断端长度至少应为该血管管径的
胃脘痛应注意哪些()
某杆件与节点板采用22个M24的螺栓连接,沿受力方向分两排按最小间距排列(3d0),螺栓承载力折减系数是()。
可以被视为物权凭证的运输单证有()。
库存管理就是库存物资的管理,包括数量管理和质量管理,其主要目的是在保持物资数量或质量的前提下,保证其储存质量,维持其实用价值。()
认为教学过程是新旧观念的联系和系统化过程的是()。
经济全球化是指在生产不断发展、科技加速进步、社会分工和国际分工不断深化、生产的社会化和国际化程度不断提高的情况下,世界各国、各地区的经济活动越来越超出一国和地区的范围而相互联系、相互依赖的一体化过程。从根源上说它是生产力和国际分工的高度发展,要求进一步跨越
Youwillhearalongdialogueonstafftrainingandrecruitingextrastaff.Foreachquestion(23-30),markoneletter(A,BorC)
最新回复
(
0
)