进程间的mutex
设两个进程共用一个临界资源的互斥信号量mutex=1,当mutex=-1时表示()。
-
一个进程进入了临界区,另一个进程等待
-
没有一个进程进入临界区
-
两个进程都进入临界区
-
两个进程都在等待
互斥信号量不采用自旋锁的方式实现,mutex初始值为1,当一个准备进入临界区时,mutex - 1 = 0,该进程进入临界区;
另一个进程准备进入临界区时,mutex - 1 = -1,mutex < 0时将该进程挂起到mutex的列表中,等待被唤醒。
因此一个进程已经进入临界区,另一个进程在等待。
对于两个并发进程,设互斥信号量为mutex,若mutex=0,则
-
表示没有进程进入临界区
-
表示有一个进程进入临界区
-
表示有一个进程进入临界区,另一个进程等待进入
-
表示有两个进程进入临界区
解析:本题考查互斥信号量的性质,mutex初值为1,表示允许一个进程进入临界资源,当由一个进程进入临界区且没有进程等待进入时,mutex减1,变为0,|mutex|为等待进入的进程数。就此题而言,当mutex=1时表示没有进程进入临界区;当mutex=-1时表示有一个进程进入临界区,另一个进程等待进入,答案选B。
新战场:https://blog.csdn.net/Stephen___Qin