熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 操作系統 >> 正文

二十 九陰真經之北航篇——閱覽室問題[1]

2013-11-15 15:54:28  來源: 操作系統 
閱覽室問題

  有一個閱覽室共有個座位讀者進入時必須先在一張登記表上登記該表為每一個座位列一表目包括座號和讀者姓名等讀者離開時要消掉登記的信息試問

  ()為描述讀者的動作應編寫幾個程序設置幾個進程?

  ()試用PV操作描述各個進程之間的同步互斥關系

  問題分析

  讀者動作有兩個一個時填表進入閱覽室這時要考慮閱覽室裡是否有空位一是讀者閱讀完畢離開閱覽室這時的操作要考慮閱覽室裡是否有讀者讀者在閱覽室讀書時由於沒有引起資源的變動不算動作變化

  算法的信號量有三個seats表示閱覽室時否有座位(初值為)readers表示閱覽室裡的讀者數初值為用於互斥的mutex初值為

  

  The PV code Using Pascal

  

  var seatsraadersmutex:semaphore;

      seats:=;

     readers:=;

     mutex:=;

  cobegin

    procedure Enter

     begin

     while TRUE

 

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

 []  []


From:http://tw.wingwit.com/Article/program/czxt/201311/24191.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.