首页 > 试题广场 >

设两个进程共用一个临界资源的互斥信号量mutex,当mute

[单选题]
设两个进程共用一个临界资源的互斥信号量mutex,当mutex=1时表示()。
  • 一个进程进入了临界区,另一个进程等待
  • 没有一个进程进入临界区
  • 两个进程都进入临界区
  • 两个进程都在等待
互斥信号量,初始值为1,取值范围为(-1, 0,1)。
当信号量为1时,表示两个进程皆未进入需要互斥的临界区;
当信号量为0时,表示有一个进程进入临界区运行,另一个必须等待;
当信号量为-1时,表示有一个进程正在临界区运行,另一个进程因等待而阻塞在信号量队列中,需要当前已在临界区运行的进程退出时唤醒。
发表于 2016-07-21 21:12:08 回复(3)
B
信号量mutex表示资源的数目,本题中两个进程用一块临界区,所以初值为1,
进程在使用临界资源的时候,执行P、V原子操作,当有进程进入临界区时候执行P操作,即可用资源数-1,当进程退出临界区执行V操作,即可用资源数+1。
当mutex=1,表示临界区当前没有进程使用。所以选B
发表于 2015-08-10 19:07:03 回复(0)
互斥信号量,初始值为1,取值范围为(-1, 0,1)。
当信号量为1时,表示两个进程皆未进入需要互斥的临界区;
当信号量为0时,表示有一个进程进入临界区运行,另一个必须等待;
当信号量为-1时,表示有一个进程正在临界区运行,另一个进程因等待而阻塞在信号量队列中,需要当前已在临界区运行的进程退出时唤醒。
发表于 2017-04-21 09:53:29 回复(2)
1:代表都没访问锁
0:有一个访问了锁,进了临界区,另一个还没访问锁。
-1:有一个访问了锁,进了临界区,另一个访问了锁,但被阻塞。
发表于 2023-03-10 08:50:29 回复(0)
信号量用于互斥,初始值为1
发表于 2015-08-10 12:32:08 回复(0)
互斥信号量,初始值为1,取值为-1,0,1三种可能性
当mutex==0;说明已经有一个进程进入临界区,另一个还未申请锁
当mutex==1;说明两个进程都未申请锁
当mutex==-1时,说明一个已经在临界区,另一个已经申请了锁,等待临界区的进程退出;
总结:|mutex|表示多少个进程在等待进入临界区。
发表于 2022-05-24 08:22:40 回复(0)
muteX=1 表示可用资源为1 ,=-1表示有一个资源在外面等着呢,=0表示有一个进程已经进去了
发表于 2021-08-15 20:55:56 回复(0)
互斥信号量,初始值为1,取值范围为(-1,0,1)。
当信号量为1时,表示两个进程皆未进入需要互斥的临界区。
当信号量为0时,表示有一个进程进入临界区运行,另一个必须等待。
当信号量为-1时,表示有一个进程正在临界区运行,另一个进程因等待而阻塞在信号量队列中,需要当前已在临界区运行的进程退出时唤醒。
发表于 2021-06-22 15:03:05 回复(1)
那不就是意味着临界区可用资源为1
发表于 2020-09-14 09:19:48 回复(0)
信号量就是一个计数器,其取值支持两种操作:加法操作up和减法操作down。如果信号量的取值限制为1和0两种情况,则就是一把锁。也称二元信号量。
二元信号量的down减法操作:
1、等待信号量为1.
2、将信号量的值设为0。
3、继续往下执行
二元信号量的up加法操作:
1、将信号量的值设置为1。
2、叫醒在该信号量上面等待的第一个线程。
3、线程继续往下执行。
二元信号量进行互斥的形式如下:
down()
        <临界区>
        up()

down就是获得锁,up就是释放锁。
发表于 2017-08-01 15:35:42 回复(0)
注意区分值的标记,当值为1时,表示资源可用,从而两个进程都没有进入临界区。
发表于 2016-07-08 10:21:42 回复(0)
"两个进程共用一个临界资源",临界资源在两个进程互斥访问,所以信号量初始值为1,当没有一个进入时mutex=1
发表于 2016-01-03 23:12:10 回复(0)
信号量的初始值也不一定就为1啊?
发表于 2015-10-18 22:39:15 回复(2)
信号量用于互斥,初始值为1
发表于 2015-09-20 09:50:09 回复(0)