对信号量S执行V操作后,以下叙述中正确的是( ) 。

admin2018-01-24  28

问题 对信号量S执行V操作后,以下叙述中正确的是(   )  。

选项 A、当S等于O时唤醒一个阻塞进程
B、当S小于0时唤醒一个阻塞进程
C、当S小于等于0时唤醒一个就绪进程
D、当S小于O时唤醒一个就绪进程

答案A

解析 本题考查操作系统的基础知识。荷兰学者Dijkstra提出的信号量(或信号灯)机制,是一种卓有成效的进程同步与互斥的工具。对信号量的操作原语有两种,P操作和V操作。P操作和V操作是执行时不被打断的两个操作系统原语,P操作和V操作必须成对使用。在操作系统中,信号量是表示资源的实体,它由两个成员(S,Q)构成,其中S是一个具有非负初值的整型变量,是一个初始状态为空的队列。整型变量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小于等于0时,会将信号量队列中第一个进程移出,变为就绪状态。当S等于0时,原进程执行完后,移出的进程就会被唤醒。
转载请注明原文地址:https://jikaoti.com/ti/IaI7FFFM
0

相关试题推荐
最新回复(0)