采用信号量和P、V原语解决生产者—消费者问题时,设:信号量Empty对应空缓冲区资源,Full对应满缓冲区资源,Mutex用于访问共享缓冲池时的互斥,则下列进程描述()是正确的。 A: 生产者:P(Mutex); P(Empty); …; V(Mutex); V(Full)消费者:P(Full):P(Mutex); …; V(Mutex); V(Empty) B: C均不正确 C: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Mutex); P(Full); …; V(Mutex); V(Empty) D: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Full); P(Mutex); …; V(Mutex); V(Empty)
采用信号量和P、V原语解决生产者—消费者问题时,设:信号量Empty对应空缓冲区资源,Full对应满缓冲区资源,Mutex用于访问共享缓冲池时的互斥,则下列进程描述()是正确的。 A: 生产者:P(Mutex); P(Empty); …; V(Mutex); V(Full)消费者:P(Full):P(Mutex); …; V(Mutex); V(Empty) B: C均不正确 C: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Mutex); P(Full); …; V(Mutex); V(Empty) D: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Full); P(Mutex); …; V(Mutex); V(Empty)
采用信号量和P、V原语解决生产者—消费者问题时,设:信号量Empty对应空缓冲区资源,Full对应满缓冲区资源,Mutex用于访问共享缓冲池时的互斥,则下列进程描述( )是正确的。 A: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Full); P(Mutex); …; V(Mutex); V(Empty) B: 生产者:P(Mutex); P(Empty); …; V(Mutex); V(Full)消费者:P(Full):P(Mutex); …; V(Mutex); V(Empty) C: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Mutex); P(Full); …; V(Mutex); V(Empty D: A、B、C均不正确
采用信号量和P、V原语解决生产者—消费者问题时,设:信号量Empty对应空缓冲区资源,Full对应满缓冲区资源,Mutex用于访问共享缓冲池时的互斥,则下列进程描述( )是正确的。 A: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Full); P(Mutex); …; V(Mutex); V(Empty) B: 生产者:P(Mutex); P(Empty); …; V(Mutex); V(Full)消费者:P(Full):P(Mutex); …; V(Mutex); V(Empty) C: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Mutex); P(Full); …; V(Mutex); V(Empty D: A、B、C均不正确
采用信号量和P、V原语解决生产者—消费者问题时,设:信号量Empty对应空缓冲区资源,Full对应满缓冲区资源,Mutex用于访问共享缓冲池时的互斥,则下列进程描述()是正确的。 A: 生产者:P(Mutex); P(Empty); …; V(Mutex); V(Full)消费者:P(Full):P(Mutex); …; V(Mutex); V(Empty) B: C均不正确 C: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Mutex); P(Full); …; V(Mutex); V(Empty) D: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Full); P(Mutex); …; V(Mutex); V(Empty)
采用信号量和P、V原语解决生产者—消费者问题时,设:信号量Empty对应空缓冲区资源,Full对应满缓冲区资源,Mutex用于访问共享缓冲池时的互斥,则下列进程描述()是正确的。 A: 生产者:P(Mutex); P(Empty); …; V(Mutex); V(Full)消费者:P(Full):P(Mutex); …; V(Mutex); V(Empty) B: C均不正确 C: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Mutex); P(Full); …; V(Mutex); V(Empty) D: 生产者:P(Empty); P(Mutex); …; V(Mutex); V(Full)消费者:P(Full); P(Mutex); …; V(Mutex); V(Empty)
当一个进程因在互斥信号量mutex上执行P(mutex)操作而被阻塞,则mutex的值为()
当一个进程因在互斥信号量mutex上执行P(mutex)操作而被阻塞,则mutex的值为()
对于两个并发进程,设互斥信号量为mutex,若mutex=0,则:
对于两个并发进程,设互斥信号量为mutex,若mutex=0,则:
在有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)两条语句可以颠倒顺序
在有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)两条语句可以颠倒顺序
当一个进程因在互斥信号量mutex上执行V(mutex)操作而导致唤醒另一个进程时,则执行V操作后mutex值为()。
当一个进程因在互斥信号量mutex上执行V(mutex)操作而导致唤醒另一个进程时,则执行V操作后mutex值为()。
设两个进程共用一个临界资源的互斥信号量mutex,当mutex=1时表示()
设两个进程共用一个临界资源的互斥信号量mutex,当mutex=1时表示()
对于两个并发进程,设互斥信号量为 mutex(初值为1),若 mutex=0,则()。
对于两个并发进程,设互斥信号量为 mutex(初值为1),若 mutex=0,则()。
对于有两个并发进程的系统,设互斥信号量为mutex,若mutex=0,则_________。 A: 表示没有进程进入与mutex相关的临界区 B: 表示有一个进程进入与mutex相关的临界区 C: 表示有一个进程进入与mutex相关的临界区,另一个进程等待进入 D: 表示有两个进程进入与mutex相关的临界区
对于有两个并发进程的系统,设互斥信号量为mutex,若mutex=0,则_________。 A: 表示没有进程进入与mutex相关的临界区 B: 表示有一个进程进入与mutex相关的临界区 C: 表示有一个进程进入与mutex相关的临界区,另一个进程等待进入 D: 表示有两个进程进入与mutex相关的临界区