问答题
有一个理发师、一把理发椅和n巴供等候理发的顾客坐的椅子。如果没有顾客,则理发师便在理发椅子上睡觉;当一个顾客到来时,必须唤醒理发师,进行理发;如果理发师正在理发时,又有顾客来到,则如果有空椅子可坐,他就坐下来等,如果没有空椅子,他就离开。为理发师和顾客各编一段程序描述他们的行为,要求不能带有竞争条件。
【参考答案】
使用三个信号量:
·customers,用于记录等候的顾客的数量。
·barbers,用于记录空闲理......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
点击查看答案
<上一题
目录
下一题>
热门
试题
问答题
下面是两个并发执行的进程。它们能正确执行吗若不能,试举例说明,并修改之。 Cobegin Var x: integer; Process P1 Var y, z:integer; Begin x:=1; y =0; If X>=1 then y:=y+1; z:=y; End Process P2 Var t, u:integer; Begin x:=0; t:=0; If x<1 then t:=t+2; u:=t; End Coend
点击查看答案
问答题
设P1和P2是两个并发进程,它们共享一个临界资源,其执行临界区的算法如下。请判断该算法是否正确,并说明理由。如果有错,请改正。信号量S1、S2的初始值均为0。 P1 P2 _______________ ________________ while(1) while(1) 临界区: P(s1); V(S1); 临界区; … V(S2); P(S2); … …
点击查看答案
相关试题
如下图所示,相交的四条单行线不幸塞车。根...
假设三个进程共享四个资源,每个进程一次只...
考虑由n个进程共享的具有m个同类资源的系统...
某系统有同类资源m个,供n个进程共享。如果...
设系统中有三种类型的资源(A、B、C)和五...