校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > UI专业知识 > 色彩
题目

设两个进程共用一个临界资源的互斥信号量mutex,当mutex=1时表示()。

A.一个进程进入了临界区,另一个进程等待

B.没有一个进程进入临界区

C.两个进程都进入临界区

D.两个进程都在等待

解答

正确答案是 B

互斥信号量,初始值为1,取值范围为(-1, 0,1)。
当信号量为1时,表示两个进程皆未进入需要互斥的临界区;
当信号量为0时,表示有一个进程进入临界区运行,另一个必须等待;
当信号量为-1时,表示有一个进程正在临界区运行,另一个进程因等待而阻塞在信号量队列中,需要当前已在临界区运行的进程退出时唤醒。
C 5条回复 评论
已註銷

连刷十节了!学到好多!

发表于 2023-02-19 23:00:00
0 0
水杯

我是大学学的Java开发、现在转行做了测试刚做两个多月

发表于 2021-09-13 21:00:00
0 0
大葫芦

信号量用于互斥,初始值为1

发表于 2018-10-15 17:38:18
0 0
途安米

信号量就是一个计数器,其取值支持两种操作:加法操作up和减法操作down。如果信号量的取值限制为1和0两种情况,则就是一把锁。也称二元信号量。

二元信号量的down减法操作:
1、等待信号量为1.
2、将信号量的值设为0。
3、继续往下执行
二元信号量的up加法操作:
1、将信号量的值设置为1。
2、叫醒在该信号量上面等待的第一个线程。
3、线程继续往下执行。
二元信号量进行互斥的形式如下:
down()
        <临界区>
        up()

down就是获得锁,up就是释放锁。

发表于 2018-10-15 17:38:06
0 0
万成

信号量mutex表示资源的数目,本题中两个进程用一块临界区,所以初值为1,
进程在使用临界资源的时候,执行P、V原子操作,当有进程进入临界区时候执行P操作,即可用资源数-1,当进程退出临界区执行V操作,即可用资源数+1。
当mutex=1,表示临界区当前没有进程使用。所以选B

发表于 2018-10-15 17:37:31
0 0