理发师问题.ppt

问题:一个理发店有一个入口和一个出口。理发店内有一个可站5 位顾客的站席区、4 个单人沙发、3 个理发师及其专用理发工具、一个收银台。新来的顾客坐在沙发上等待;没有空沙发时,可在站席区等待;站席区满时,只能在入口外等待。理发师可从事理发、收银和休息三种活动。 理发店的活动满足下列条件: 1)休息的理发师是坐地自己 专用的理发椅上,不会占用顾客的沙发; 2)处理休息状态的理发师可为在沙发上等待时间 最长的顾客理发; 3)理发时间长短由理发师决定; 4)在站席区等待时间最长的顾客可坐到空闲的理 发上; 5)任何时刻最多只能有一个理发师在收银。 当顾客来理发时,理发师将按 什么标准来决定先给谁理发? 理发师当然会有自己觉得合理的做法, 绝不会发生下面的情况: customer 进程 barber 进程 cash(收银台)进程 让我们一起来讨论程序的实现吧! 信号量总表: 信号量 wait signal stand_capacity 顾客等待进入理发店 顾客离开站席区 sofa 顾客等待坐到沙发 顾客离开沙发 barber_chair 顾客等待空理发椅 理发师释放空理发椅 customer_rea

文档评论(0)

1亿VIP精品文档

相关文档