采用信号量和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均不正确
当一个进程因在互斥信号量mutex上执行P(mutex)操作而被阻塞,则mutex的值为()
当一个进程因在互斥信号量mutex上执行P(mutex)操作而被阻塞,则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)两条语句可以颠倒顺序
在有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,若mutex=0,则:
对于两个并发进程,设互斥信号量为mutex,若mutex=0,则:
OS/2属于( )。 A: 单用户单任务OS B: 单用户多任务OS C: 多用户多任务OS D: 分布式OS
OS/2属于( )。 A: 单用户单任务OS B: 单用户多任务OS C: 多用户多任务OS D: 分布式OS
下面导入标准库os语句正确的是( ). A: As os B: To os C: import os D: From os
下面导入标准库os语句正确的是( ). A: As os B: To os C: import os D: From os
微机操作系统可以分为()三种。 A: 单用户单任务OS、多用户双任务OS和多用户多任务OS B: 单用户单任务OS、多用户单任务OS和多用户多任务OS C: 单用户单任务OS、单用户多任务OS和多用户单任务OS D: 单用户单任务OS、单用户多任务OS和多用户多任务OS
微机操作系统可以分为()三种。 A: 单用户单任务OS、多用户双任务OS和多用户多任务OS B: 单用户单任务OS、多用户单任务OS和多用户多任务OS C: 单用户单任务OS、单用户多任务OS和多用户单任务OS D: 单用户单任务OS、单用户多任务OS和多用户多任务OS
对于有两个并发进程的系统,设互斥信号量为mutex,若mutex=0,则_________。 A: 表示没有进程进入与mutex相关的临界区 B: 表示有一个进程进入与mutex相关的临界区 C: 表示有一个进程进入与mutex相关的临界区,另一个进程等待进入 D: 表示有两个进程进入与mutex相关的临界区
对于有两个并发进程的系统,设互斥信号量为mutex,若mutex=0,则_________。 A: 表示没有进程进入与mutex相关的临界区 B: 表示有一个进程进入与mutex相关的临界区 C: 表示有一个进程进入与mutex相关的临界区,另一个进程等待进入 D: 表示有两个进程进入与mutex相关的临界区
当一个进程因在互斥信号量mutex上执行V(mutex)操作而导致唤醒另一个进程时,则执行V操作后mutex值为()。
当一个进程因在互斥信号量mutex上执行V(mutex)操作而导致唤醒另一个进程时,则执行V操作后mutex值为()。