若信号量S的初值为2,当前值为-1,则表示有(    )等待进程。(2015年嵌入式系统设计师下半年)
A.0个
B.1个
C.2个
D.3个





参考答案:B
参考解析:本题考查操作系统的基础知识。荷兰学者Dijkstra提出的信号量(或信号灯)机制,是一种卓有成效的进程同步与互斥的工具。对信号量的操作原语有两种,P操作和V操作。P操作和V操作是执行时不被打断的两个操作系统原语,P操作和V操作必须成对使用。
    在操作系统中,信号量是表示资源的实体,它由两个成员(S,Q)构成,其中S是一个具有非负初值的整型变量,Q是一个初始状态为空的队列。S表示系统中某类资源的使用情况,当其值大于0时,表示系统中当前可用资源数目;当其值小于0时,其绝对值表示系统中因请求该类资源而阻塞等待的进程数目。除信号量的初值外,信号量的值能由P操作和V操作改变。
    P(S)的主要功能是:先执行S=S-1;若S≥0则进程继续执行;若S<0则阻塞该进程,并将它插入到该信号量的等待队列Q中。
    V(S)的主要功能是:先执行S=S+1;若S>0则进程继续执行;若S≤0则从该信号量等待队列中移出第一个进程,使其变为就绪状态并插入就绪队列,然后再返回原进程继续执行。
    综上所述,当前的S值为-1,则表示有1个进程在信号量的等待队列Q中。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接:https://scpro.cn/v/e2953346b77b11ee.html

相关文章

最近发表

好文推荐