刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

假设有6个进程共享一个互斥段N,如果最多允许3个进程同时访问互斥段N,那么利用PV操作时,所用信号量S的变化范围为(问题1) ;若信号量S的当前值为-1,则表示系统中有(问题2)个正在等待该资源的进程。

A
0~6
B
-1~5 
C
-2~4
D
-3~3
使用微信搜索喵呜刷题,轻松应对考试!

答案:

D

解析:

本题考查操作系统中的信号量PV操作以及互斥段访问控制。首先,假设有6个进程共享一个互斥段N,最多允许3个进程同时访问这个互斥段。利用PV操作时,信号量S的变化范围需要考虑两个方面:一是表示当前可用的资源数量,二是表示等待资源的进程数量。因为最多只允许3个进程同时访问互斥段N,所以信号量的最大值(表示当前可用资源数量)为3。另一方面,当信号量的值小于零时,表示有进程在等待资源。因为有6个进程,最多只能有3个进程同时访问互斥段,所以最多有3个进程在等待。考虑到一个进程访问完成后会释放资源,使得其他等待的进程可以进入互斥段访问资源,所以最少情况下,当有进程正在等待时,信号量的值可以为“-(当前进程数)”,即最多可以允许负数的取值范围为-(-当前进程数)。因为这里允许最多有6个进程同时参与PV操作,所以信号量的最小值为-(-6)= -(-当前进程数)= -(-等待的进程数)= -(-(-等待进程数))=-等待的进程数=-(等待的进程数),因此最小取值为-3(因为有至少三个进程正在等待资源)。因此信号量S的变化范围为-3~+3,故答案选D。

创作类型:
原创

本文链接:假设有6个进程共享一个互斥段N,如果最多允许3个进程同时访问互斥段N,那么利用PV操作时,所用信号量

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share