計算機作業系統和尚打水問題

General 更新 2024年11月22日

  計算機作業系統有一個很有趣的問題相信大家都碰到過,那就是和尚打水問題,下面由小編整理了計算機作業系統的和尚打水問題的相關知識,希望對你有幫助。

  計算機作業系統的和尚打水問題描述

  某寺廟,有小和尚和老和尚若干,有一個水缸,由小和尚提水入缸供老和尚飲用.水缸可以容納10桶水,水取自同一口井中,由於水井口窄,每次只能容納一個水桶取水.水桶總數為3個.每次入水、取水僅為一桶,且不可同時進行.試給出有關取水、入水的演算法描述.

  計算機作業系統的和尚打水問題解決方法

  Var mutex1, mutex2, empty, full, count: semaphore;

  mutex1:=1; mutex2:=1;

  empty:=10; full:=0; count:=3;

  process 小和尚:

  begin

  repeat

  wait***empty***;

  wait***count***;

  wait***mutex1***;

  從井中取水;

  signal***mutex1***;

  wait***mutex2***;

  送水入水缸;

  signal***mutex2***;

  signal***count***;

  signal***full***;

  until false;

  end

  process 老和尚:

  begin

  repeat

  wait***full***;

  wait***count***;

  wait***mutex2***;

  從缸中取水;

  signal***mutex2***;

  signal***empty***;

  signal***count***;

  until false;

  end

計算機作業系統通常具有的五大功能
計算機作業系統名詞解釋總結
相關知識
計算機作業系統和尚打水問題
計算機作業系統的概念功能和特點
簡述如何加固計算機作業系統
計算機作業系統發展歷程是怎樣的
計算機作業系統相關論文
計算機作業系統安全淺析的論文
計算機作業系統相關書籍推薦
簡述對計算機作業系統的認識
計算機作業系統學習指導的方法
計算機作業系統學習指導方法有哪些