首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有n(n≥3)位哲学家围坐在一张圆桌边,每位哲学家交替地就餐和思考。在圆桌中心有m(m≥1)个碗,每两位哲学家之间有一根筷子。每位哲学家必须取到一个碗和两侧的筷子之后,才能就餐,进餐完毕,将碗和筷子放回原位,并继续思考。为使尽可能多的哲学家同时就餐,且防止
有n(n≥3)位哲学家围坐在一张圆桌边,每位哲学家交替地就餐和思考。在圆桌中心有m(m≥1)个碗,每两位哲学家之间有一根筷子。每位哲学家必须取到一个碗和两侧的筷子之后,才能就餐,进餐完毕,将碗和筷子放回原位,并继续思考。为使尽可能多的哲学家同时就餐,且防止
admin
2020-06-17
57
问题
有n(n≥3)位哲学家围坐在一张圆桌边,每位哲学家交替地就餐和思考。在圆桌中心有m(m≥1)个碗,每两位哲学家之间有一根筷子。每位哲学家必须取到一个碗和两侧的筷子之后,才能就餐,进餐完毕,将碗和筷子放回原位,并继续思考。为使尽可能多的哲学家同时就餐,且防止出现死锁现象,请使用信号量的P、V操作[wait( )、signal( )操作]描述上述过程中的互斥与同步,并说明所用信号量及初值的含义。
选项
答案
回顾传统的哲学家问题,假设餐桌上有n个哲学家、n根筷子,那么可以用这种方法避免死锁:限制至多允许n-1个哲学家同时“抢”筷子,那么至少会有1个哲学家可以获得两根筷子并顺利进餐,于是不可能发生死锁的情况。本题可以用碗这个限制资源来避免死锁:当碗的数量m小于哲学家的数量n时,可以直接让碗的资源量等于m,确保不会出现所有哲学家都拿一侧筷子而无限等待另一侧筷子进而造成死锁的情况;当碗的数量m大于等于哲学家的数量n时,为了让碗起到同样的限制效果,我们让碗的资源量等于n-1,这样就能保证最多只有n-1个哲学家同时进餐,所以得到碗的资源量为min{n-1,m)。在进PV操作时,碗的资源量起限制哲学家取筷子的作用,所以需要先对碗的资源量进行P操作。具体过程如下: [*]
解析
转载请注明原文地址:https://www.kaotiyun.com/show/yU3i777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
某计算机系统的内存储器由(2ache和主存构成,Cache的存取周期为45纳秒,主存的存取周期为200纳秒。已知在一段给定的时间内,CPU共访问内存4500次,其中340次访问主存。问:CPU访问内存的平均时间是多少纳秒?
某32位机(机器字长32位)的一台外设通过32位总线与系统内存相连。CPU每秒执行100条指令,平均每条指令需要5个机器周期,其中3个周期必须访问内存,内存读写需一个机器周期,假定CPU在95%的时间内持续执行“背景程序”,且这段时间内不执行I/O指令。现
在平衡二叉树中的每个结点上增设一个Lsize域,其值为它的左子树中的结点个数加1,试写一个时间复杂度为O(10gn)的算法,确定树中第k个结点的位置。
测得一个以太网数据的波特率是40Mbps,那么其数据率是()。
某机字长32位,主存容量32MB,按字节编址;该机的Cache采用4路组相联映射方式,Cache容量为16KB,块长为4个字,试回答下列问题:主存地址位数为多少?
已知散列函数为H(key)=key%11,处理冲突的方法为二次探测法,探测的序列为:1,一1,4,一4,…,j2,一j2(j0时,Hi=(H(key)+di)%m当di
设一段正文由字符集{A,B,C,D,E,F}中的字母组成,这6个字母在正文中出现的次数分别为{12,18,26,6,4,34}。(1)为这6个编码设计哈夫曼编码。(2)设每个字节由8位二进制位组成,试计算按哈夫曼编码压缩存储这段正文共需多少个字节。(3)若
给定序列{3,5,7,9,11,13,15,17},按表中元素的顺序依次插入一棵初始为空的二叉排序树,画出插入完成后的二叉排序树,并求在等概率情况下查找成功的平均查找长度。
关于死锁的银行家算法是围绕“安全状态”的概念工作的。当系统预测到不安全状态时,就拒绝分配资源,但是,银行家算法要求的条件并不是必要的。例如,某系统有12个资源供进程P0、P1、P2使用。目前的分配情况如下:请说明系统并不一定死锁。
设计一个判别表达式中左右括号是否配对出现的算法,采用()数据结构最佳。
随机试题
下列关于介入器材的描述,错误的是
散瞳合剂是指
A.呼吸系统监测B.循环系统监测C.消化系统监测D.泌尿系统监测E.神经系统监测血气分析用于
病后血虚肝热而不寐者,宜用
房地产经纪业的市场立场是()。
商务部根据监测进口情况的需要,对部分自由进口货物实行自动许可管理,下列对属于《自动进口许可管理货物目录》的商品的叙述,正确的是()。
下列项目中,可能引起资本公积变动的有()。
函数y=的定义域为()。
Supposeyouareplanningacampusfoodfestival.Writeanemailtotheinternationalstudentsinyouruniversityto1)introduce
SigmundFreudwasaworld-famousdoctorofVienna(维也纳).Hewasalsoamanfullofhumour(幽默).Once,athis70thbirthdayparty,
最新回复
(
0
)