主题:刚学计算机系统不久!遇到难题。求帮忙!
koray
[专家分:10] 发布于 2005-09-21 00:29:00
假定阅览室可同时容纳100个人阅读。读者进入时,必须在阅览室门口的一个登记表上登记。内容包括姓名,座位等。离开时要撤消掉登记内容。用P,V操作描述读者进程的同步算法!
回复列表 (共5个回复)
沙发
天地一矢 [专家分:520] 发布于 2005-09-23 21:39:00
看我前面发的生产者-消费者问题的帖子
板凳
chenwenrun [专家分:30] 发布于 2005-09-28 11:32:00
我觉得P,V操作好难学哦[em10],我也不会这题。
3 楼
calflyok [专家分:220] 发布于 2005-09-28 23:20:00
哎,没好好学OS
4 楼
chenwenrun [专家分:30] 发布于 2005-10-01 02:06:00
三个信号量:seats初值100,表示座空;readers表示阅览室的读者数,初值为0;mutex为互斥信号量。
process producer i ( i=1,2, …, 100 )
begin
repeat
if(seats);
P (seats) ;
P (mutex) ;
读者进入,记录;
V (mutex) ;
V (readers) ;
end;
process consumer j ( j=1,2, …, 100 )
begin
repeat
if(readers)
P ( readers );
P ( mutex );
读者离开,并记录;
V ( mutex );
V (seats);
end
5 楼
chenwenrun [专家分:30] 发布于 2005-10-01 02:07:00
mutex初值为1,不好意思,掉了。
我来回复