在利用记录型信号量解决生产者-消费者问题中,假设有9个生产者,6个消费者,1个容量为8个缓冲区的缓冲池,用mutex表示对缓冲池的互斥使用,分别用empty,full分别缓冲池中空缓冲区的数量和非空缓冲区的数量,则初始状态下,信号量mutex,empty,full的初始值分别为多少?()
A: mutex=8,empty=0,full=1
B: mutex=8,empty=1,full=0
C: mutex=1,empty=0,full=8
D: mutex=1,empty=8,full=0
A: mutex=8,empty=0,full=1
B: mutex=8,empty=1,full=0
C: mutex=1,empty=0,full=8
D: mutex=1,empty=8,full=0
举一反三
- 采用信号量和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)
- 在生产者和消费者问题中,可利用( )信号量,表示缓冲池中空缓冲区。 A: empty B: full C: mutex
- 在生产者和消费者问题中,应设置互斥信号量mutex,资源信号量full和empty。它们的初始值分别是(1),(2),(3)。若设定缓冲区有缓冲单元n个。