某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。以下是利用PV操作描述顾客和营业员协同工作的活动过程,其中信号量mut是管理取号机的互斥信号量; seatsNum表示空余座位数量; custNum表示顾客数量。请选择相应位置上信号量的P、V操作。Process 营业员{ while(true){ (7) ; //判断是否有等待的顾客叫号;……;为顾客服务;}}
A: P(seatsNum)
B: P(custNum)
C: V(custNum)
D: V(seatsNum)
A: P(seatsNum)
B: P(custNum)
C: V(custNum)
D: V(seatsNum)
举一反三
- 某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。以下是利用PV操作描述顾客和营业员协同工作的活动过程,其中信号量mut是管理取号机的互斥信号量; seatsNum表示空余座位数量; custNum表示顾客数量。请选择相应位置上信号量的P、V操作。Process 营业员{ while(true){…… //判断是否有等待的顾客叫号; (8) ;;为顾客服务;}} A: P(seatsNum) B: P(custNum) C: V (mut) D: V(seatsNum)
- 某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。以下是利用PV操作描述顾客和营业员协同工作的活动过程,其中信号量mut是管理取号机的互斥信号量; seatsNum表示空余座位数量; custNum表示顾客数量。请选择相应位置上信号量的P、V操作。Process 顾客{ ( 3 ) ; //找个空座位 ……; //取号机是否空闲 从取号机取号; ……;//释放取号机 ……; 等待叫号; 接受服务;} A: P(mut) B: P(seatsNum) C: V(seatsNum) D: V (mut)
- 某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。以下是利用PV操作描述顾客和营业员协同工作的活动过程,其中信号量mut是管理取号机的互斥信号量; seatsNum表示空余座位数量; custNum表示顾客数量。请选择相应位置上信号量的P、V操作。Process 顾客{ ……; //找个空座位 ( 4 ) ; //取号机是否空闲 从取号机取号; ……;//释放取号机 ……; 等待叫号; 接受服务;} A: P(mut) B: P(custNum) C: V (mut) D: V(custNum)
- 某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。以下是利用PV操作描述顾客和营业员协同工作的活动过程,其中信号量mut是管理取号机的互斥信号量; seatsNum表示空余座位数量; custNum表示顾客数量。请选择相应位置上信号量的P、V操作。Process 顾客{ ……; //找个空座位 …… ; //取号机是否空闲 从取号机取号; ( 5 ) ;//释放取号机 ……; 等待叫号; 接受服务;} A: P(custNum) B: P (mut) C: V(custNum) D: V (mut)
- 某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。以下是利用PV操作描述顾客和营业员协同工作的活动过程,其中信号量mut是管理取号机的互斥信号量; seatsNum表示空余座位数量; custNum表示顾客数量。对信号量初始化操作如下:Semaphore custNum = 0;Semaphore seatsNum =( 2 ) A: 1 B: 0 C: 10 D: 9