操作系统.操作系统练习.pptVIP

  • 51
  • 0
  • 约2.73千字
  • 约 19页
  • 2015-07-20 发布于安徽
  • 举报
操作系统练习 车站售票厅,最多可容纳20名购票者。当售票厅中少于20人时,厅外的购票者可立即进入,否则需在外面等待。把每个购票者看作一个进程。1)写进程同步;2)若所有购票者共n人,则信号量可能的变化范围是什么? 复印室里有一个操作员为顾客复印资料,有5把椅子供顾客休息等待复印。如果没有顾客,则操作员休息。当顾客来到复印室时,如果有空椅子则坐下来,并唤醒操作员;如果没有空椅子则必须离开复印室。 1、售票厅 Semaphore space=20; Process pi(i=1,2,…) { wait(space); 进入售票厅; 购票; 退出售票厅; signal(space); } Main() { cobegin { pi(); } } 2、复印室打印 信号量说明: Customers表示正在等待复印的顾客数量(不包括正在复印的顾客) Operator记录正在等待顾客的操作员数,只有1和0 Mutex用于对waiting的访问 变量说明: Waiting表示等待的顾客数量,与customers的值相等,为了解决不能读取信号量当前值的问题 Semaphore customers=0, operator=0, mutex=1; Waiting=0; Process operator() //操作员进程 { while(1) { wait(cust

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档