在操作系统的进程管理中,若某资源的信号量S的初值为2,当前值为-1,则表示系统中

最全题库2022-08-02  44

问题 在操作系统的进程管理中,若某资源的信号量S的初值为2,当前值为-1,则表示系统中有()个正在等待该资源的进程。A.0B.1C.2D.3

选项 A.0
B.1
C.2
D.3

答案 B

解析 本题考查的是操作系统中采用信号量实现进程间同步与互斥的基本知识及应用。
    在操作系统的进程管理中,由于多个进程竞争同一资源可能会发生死锁,若无外力作用,这些进程都将永远不能再向前推进。为此,最常用的方法是采用信号量(Semaphore)及有关的P V操作。信号量是表示资源的实体,是一个与队列有关的整型变量,其值仅能由PV操作改变。P操作是检测信号量是否为正值,若不是,则阻塞调用进程:V操作是唤醒一个阻塞进程恢复执行。根据用途不同,信号量分为:公用信号量和私用信号量。公用信号量用于实现进程间的互斥,初值通常设为1,它所联系的一组并行进程均可对它实施PV操作;私用信号量用于实现进程间的同步,初始值通常设为0或n。本题中,信号量的初值为2,当前值为-1,则表示系统中有1个正在等待该资源的进程。因为,当第一个申请该资源的进程对系信号量S执行P操作,信号量S减1等于1,进程可继续执行;当第二个申请该资源的进程对系信号量S执行P操作,信号量S减1等于0,进程可继续执行;当第三个申请该资源的进程对系信号量S执行P操作,信号量S减1等于-1,进程处于等待状态。所以正确答案为B。
转载请注明原文地址:https://tihaiku.com/congyezige/2428418.html

最新回复(0)