电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

一 真经之银行排队问题[2]


发布日期:2023/2/28
 

process serversi(i=n)

begin

repeat

p(customer_count);

p(mutex);

从队列中取下一个号码

v(mutex);

为该号码持有者服务

end

coend

思考

某车站售票厅任何时刻最多可容纳名购票者进入当售票厅中少于名购票者时则厅外的购票者可立即进入否则需在外面等待若把一个购票者看作一个进程请回答下列问题

)用PV操作管理这些并发进程时应怎样定义信号量写出信号量的初值以及信号量各种取值的含义

)若欲购票者最多为n个人写出信号量可能的变化范围(最大值和最小值)

定义信号量S初值为当s>它表示可以继续进入购票厅的人数当s=时表示厅内已有人正在购票当s<时|S|表示正等待进入的人数

The PV code Using Pascal

var S:semaphore;

S=;

cobegin

procedure P_i:

begin

p(s);

·

Enter and buy ticket;

·

v(s)

end

coend

最大值为最小值为N

返回《操作系统之PV金典》

[] []

上一篇:设备管理:字符设备缓沖区管理

下一篇:设备管理:块设备缓沖区管理