多个并发进程使用一个互斥信号量S时,如果S=0,则表示______。 A.有一个进程在临界区中 B.有一个进程在临界区中,另一个进程正在等待进入临界区 C.有多个进程在临界区中 D.有一个进程在临界区中,另一些进程正在等待进入临界区

admin2019-06-08  33

问题 多个并发进程使用一个互斥信号量S时,如果S=0,则表示______。
A.有一个进程在临界区中
B.有一个进程在临界区中,另一个进程正在等待进入临界区
C.有多个进程在临界区中
D.有一个进程在临界区中,另一些进程正在等待进入临界区

选项 A、 
B、 
C、 
D、 

答案A

解析 由于在系统中,多个进程竞争同一资源可能会发生死锁,若无外界条件作用,这些进程都将永远不能再向前推进。为此,在操作系统的进程管理中最常用的方法是采用信号量(Semaphore)机制。
   信号量是表示资源的实体,是一个与队列有关的整型变量,其值仅能由P、V操作改变。“P操作”是检测信号量是否为正值,若不是,则阻塞调用进程;“V操作”是唤醒一个阻塞进程恢复执行。
   根据用途不同,信号量分为公用信号量和私用信号量。公用信号量用于实现进程间的互斥,初值通常设为1,它所联系的一组并行进程均可对它实施P、V操作;私用信号量用于实现进程问的同步,初始值通常设为0或n。
   信号量S是一个整数。当S>0时,表示可供并发进程使用的资源数有S个;当S=0时,表示无资源可用,允许有一个进程在临界区中;当S<0时,表示正在等待使用临界区的进程数为|S|(S的绝对值)个。
转载请注明原文地址:https://kaotiyun.com/show/j0LZ777K
0

最新回复(0)