首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
设有n个进程共享一个互斥段,对于如下两种情况使用信号量,信号
[问答题]
设有n个进程共享一个互斥段,对于如下两种情况使用信号量,信号量的值的变化怎样?
(1) 如果每次只允许一个进程进入互斥段。
(2) 如果每次最多允许m个进程(m<n)同时进入互斥段。
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(25)
分享
纠错
2个回答
添加回答
3
SmallTianTian
•
1
)互斥信号量初值为
1
,变化范围为[
-n
+
l , 1
]。
当没有进程进入互斥段时,信号量值为
1
;当有
1
个进程进入互斥段但没有进程等待进入互斥段时,信号量值为
0
;当有
1
个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为
-1
;最多可能有
n -1
个进程等待进入互斥段,故此时信号量的值应为
-
(
n - 1
)也就是
-n+1
。
2
)互斥信号量初值为
m
,变化范围为[
-n
+
m , m
]。
当没有进程进入互斥段时,信号量值为
m
;当有
1
个进程进入互斥段但没有进程等待进入互斥段时,信号量值为
m - 1
:当有
m
个进程进入互斥段且没有一个进程等待进入互斥段时,信号量值为
0
:当有
m
个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为
- 1
;最多可能有
n - m
个进程等待进入互斥段,故此时信号量的值应为
-(n-m)
也就是
-n+m.
发表于 2015-09-26 16:47:52
回复(1)
0
小小
(1)信号量的初值为1。信号量的变化范围是1,0,-1,…,-(n-1)。(2)信号量的初值为m。信号量的变化范围是m,m-1,…,1,0,…,-(n-m)。
发表于 2015-05-19 17:24:01
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
操作系统
上传者:
小小
难度:
2条回答
25收藏
15612浏览
热门推荐
相关试题
有两个N*N的矩阵A和B,想要在P...
阿里巴巴
操作系统
评论
(38)
来自
2025年春招-中国电信...
请编写实现malloc()内存分配...
微软
C++
操作系统
评论
(3)
鲸鱼相对于( )相当于青蛙( ...
判断推理
评论
(1)
在一个新版本发布到测试环境后,测试...
软件测试
评论
(1)
在 HTML 中,用于定义表格行的...
HTML
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题