用P、V操作管理[临界区时,把信号量mutex的初值设定为1。当mutex的等待队列中有k(k>1)个进程时,信号量的值为( )。
A.k
B.k-1
C.1-k
D.-k
第1题:
此题为判断题(对,错)。
第2题:
A.1
B.-1
C.-N
D.N
第3题:
第4题:
重新定义P操作: P(s): S=S-1; if s<0 then {将本进程插入相应等待队列的队首}; V操作的定义不变。 使用上述定义的信号量操作。现有n个进程竞争进入一个临界区,需要使用(24),并保证进程能够以正常的次序公平地进入临界区。
A.1个信号量,初值为1
B.2个信号量,初值分别为1,0
C.n-1个信号量,初值均为1
D.n/2个信号量,初值均为1
第5题:
关于读者写者问题,下列叙述中哪些是错误的?
Reader()
{
while (TRUE) {
P(mutex);
rc = rc + 1;
if (rc = = 1) P (w);
V(mutex); ①
读操作;
P(mutex); ②
rc = rc - 1;
if (rc = = 0) V(w);
V(mutex);
其他操作;
}
}
writer()
{
while (TRUE) {
……
P(w);
写操作;
V(w);
}
}
A.信号量w的初值是0
B.信号量mutex的初值是1
C.计数器rc的初值是0
D.语句P(mutex)的位置可以放到语句rc = rc + 1后面
E.语句①②可以取消
A,D,E
第6题:
在有N个缓冲区的生产者消费者的问题中,下列叙述中哪些是错误的?producer() { int item; while(TRUE) { item = produce_item(); P(empty); P(mutex); insert_item(item); V(mutex) V(full); } } consumer() { int item; while(TRUE) { P(full); P(mutex); item = remove_item(); V(mutex); V(mutex); consume_item(item); } }
A.信号量empty的初值为N
B.信号量full的初值为0
C.信号量mutex的初值为0
D.P(full)和P(mutex)两条语句可以颠倒顺序
E.V(mutex)和V(mutex)两条语句可以颠倒顺序
第7题:
设两个进程共用一个临界段的互斥信号量mutex,当mutex=-1时表示:()。
第8题:
用PV操作管理临界区时,把信号量的初值定义为1,现有n个进程在等待进入临界区,这时信号量的值为()
第9题:
用PV操作实现进程互斥进入相关临界区时,要求()
第10题:
第11题:
第12题:
n
n-1
1-n
-n
第13题:
用P操作、V操作管理临界区时,信号量的初值可以定义为()。
A、任意值
B、-1
C、-19
D、1
第14题:
A. 一个进程入了临界区,另一个进程等待
B. 没有一个进程进入了临界区
C. 只有一个进程进入了临界区
D. 两个进程都在等待
第15题:
●对于两个并发进程,设互斥信号量为mutex,若mutex =1,则(35)。
(35)
A.表示没有进程进入临界区
B.表示有一个进程进入临界区
C.表示有一个进程进入临界区,另一个进程等待进入
D.表示有两个进程进入临界区
第16题:
用P、V操作管理临界区时,把信号量sign的初值设为1。当sign的等待队列中有k(k>1)个进程时,信号量的值为( )。
A)k
B)k-1
C)1-k
D)-k
第17题:
用P、V操作管理临界区时,把信号量mutex的初值设定为1。当有k(k>1)个进程在mutex的等待队列中时,信号量的值为
A.k
B.k 1
C.1 k
D.k
第18题:
设某一临界区对应的记录型信号最mutex,其初值为1 (即mutex.value=l),当mutex.value=-2时,表示有()个进程在临界区内,有()个进程等待进入临界区。
第19题:
多个并发进程使用一个互斥信号量mutex时,如果mutex=0,则表示()
第20题:
利用信号量实现进程的(),应为临界区设置一个信号量mutex,其初值为1,表示该资源尚未使用,临界区应置于()()原语之间。
第21题:
没有进程在临界区中
有一个进程在临界区中
有多个进程在临界区中
有一个进程在临界区中,另一些进程正在等待进入临界区
第22题:
一个进程入了临界段,另一个进程等待
没有一个进程进入了临界段
只有一个进程进入了临界段
两个进程都在等待
第23题:
k
k-1
1-k
-k
第24题:
表示没有进程进入临界区
表示有一个进程进入临界区
表示有一个进程进入临界区,另一个进程等待进入
表示有两个进程进入临界区