首页
题库
面试
求职
课程
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
某系统中有11台打印机,N个进程共享打印机资源,每个进程要求
[单选题]
某系统中有11台打印机,N个进程共享打印机资源,每个进程要求3台,当N的取值不超过()时系统不会发生死锁。
4
5
6
7
查看答案及解析
添加笔记
邀请回答
收藏(450)
分享
15个回答
添加回答
10
huixieqingchun
设有m个资源,n个进程,每个进程要调用k个资源,一次只能调用一个,则:
m>n(k-1) 对应找满足条件的值即可。
发表于 2016-07-08 09:33:31
回复(1)
更多回答
49
推荐
牛客-007
答案:B
不发生死锁的条件是至少能保证一个进程能获得三台打印机资源。
最坏的情况是1个进程获取三台打印机资源,另外N-1个进程获取到两台打印机,等待获取第三台。
3+(N-1)*2=11
N=5
编辑于 2015-02-02 10:52:27
回复(3)
1
An丨佳飞
直接假设最坏状态也就是每个进程有两台打印机,然后至少有一个进程获得三台打印机,这样一台执行完就可以将打印机分给其他进程,那不然每个进程都获取了两个,都无法执行准备获取其他资源就会造成死锁
发表于 2019-04-09 20:34:34
回复(0)
1
封某某
不会发生死锁的情况: 所有可用资源数 =p(m-1)+1 p=进程数 m=一个进程所需资源数
编辑于 2018-12-14 22:51:45
回复(0)
1
牛客314081号
因为需要11台打印机,每次要用三台,所以得出3+(n-1)×2=11。 5
发表于 2015-12-20 23:55:56
回复(0)
1
站在3000英尺凝望
3 + 2*(n-1) = 11
发表于 2015-08-29 23:30:12
回复(0)
18
wentguo
可以用哲学家就餐问题的思想解决此类问题,
每个进程要求3台,所以先给每个进程2台,再如果多出一台,分给某一个进程,等这个进程执行完了,释放自己的资源给其他进程用,这样就不会发生死锁。即2N+1=11,得N=5。N=4时,不是最大值,不符合题意,N=6时,资源不够用,可能死锁。
发表于 2016-06-28 09:00:00
回复(0)
6
青癯
当每个进程都获得了2台打印机且系统剩余打印机不少于1台时,系统不会死锁。即11-2N>=1
N=5
类推:
M个同类资源,N个进程,每个进程对资源的最大需求是Max,M、N、Max满足什么不等式,系统不会发生死锁?
总结:M-N*(Max-1)>=1
发表于 2019-12-03 19:54:06
回复(0)
2
鬼马
不能有两个进程同时等地!最多有一个进程处于等待的状态。
发表于 2015-11-29 20:46:10
回复(0)
1
抠脚大汉4
(3-1)*N+1<=11. N小于等于5
发表于 2019-12-01 11:15:48
回复(0)
0
_向offer冲锋-
银行家算法
发表于 2020-07-03 18:48:09
回复(0)
0
牛客89716666号
只要有一个进程获取到3台打印机就不会死锁
发表于 2020-04-12 18:05:40
回复(0)
0
牛客734263889号
p116
发表于 2019-12-09 20:55:56
回复(0)
0
炮祺泡祺君
为保证死锁不会发生,每个进程应分配2台打印机,并留出1台打印机让其中一个进程独占,其他进程等待资源释放,故2*N+1=11,N=5,选B。
编辑于 2018-12-21 01:07:35
回复(0)
0
henghengbiang
6时就有可能发生死锁,等于5台不会
发表于 2015-05-21 17:25:12
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
欢聚集团
操作系统
上传者:
小牧魔法袋
难度:
15条回答
450收藏
26834浏览
热门推荐
相关试题
有两个N*N的矩阵A和B,想要在P...
阿里巴巴
操作系统
评论
(38)
来自
阿里巴巴2015实习生笔试题
请编写实现malloc()内存分配...
微软
C++
操作系统
评论
(3)
下列UML图中不是UML2规范新增...
UML
评论
(1)
()不是UML体系的组成部分。
UML
评论
(1)
UML中关联的多重度是指()
UML
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题