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

九 真經之吃水果問題(南京大學2000)[1]

2013-11-15 15:50:32  來源: 操作系統 

九 真經之吃水果問題(南京大學

  

  問題描述

  桌上有一空盤允許存放一只水果爸爸可向盤中放蘋果也可向盤中放桔子兒子專等吃盤中的桔子女兒專等吃盤中的蘋果規定當盤空時一次只能放一只水果供吃者取用請用PV原語實現爸爸兒子女兒三個並發進程的同步

  

  問題分析

  在本題中爸爸兒子女兒共用一個盤子盤中一次只能放一個水果當盤子為空時爸爸可將一個水果放入果盤中若放入果盤中的是桔子則允許兒子吃女兒必須等待若放入果盤中的是蘋果則允許女兒吃兒子必須等待本題實際上是生產者消費者問題的一種變形這裡生產者放入緩沖區的產品有兩類消費者也有兩類每類消費者只消費其中固定的一類產品

  

  The PV code Using Pascal

  

  在本題中應設置三個信號量SSoSa信號量S表示盤子是否為空其初值為l信號量So表示盤中是否有桔子其初值為信號量Sa表示盤中是否有蘋果其初值為

  同步描述如下

  S;

  Sa;

  So;

  cobegin

   Procedure father;    /*父親進程*/

   Procedure son;      /*兒子進程*/

   Procedure daughter;  /*女兒進程*/

  coend

 

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

[]  []  


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