有一个恐龙博物馆和一个公园,有m个旅客和n辆车,每辆车只能容纳一个旅客。旅客在博物馆逛了一会儿,然后排队乘坐旅行车。当一辆车可用时,它载入一个旅客,然后绕公园行驶任意长的时间,如果n辆车都已被旅客乘坐游玩,则想坐车的旅客需要等待;如果一辆车已经就绪,但没有旅客等待,那么这辆车等待、使用信号量同步m个旅客和n辆车的进程。
(1) 完善如下程序,在下列(9)~(12)四处填入有关语句
(2) 说明每个信号量的物理意义。
visiors = m; cars=n; mutex=1;
pvi( ) pci( )
{ repeat repeat
9 ; p(visiors);
p(mutex); 12 ;
get on; start;
travell; run;
get off; stop;
10 ; v(visiors);
11 ; v(mutex);
until false; until false;
} }
Visiors的含义 (); cars的含义 () ;mutex的含义 ();