リソース階層による解法とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > リソース階層による解法の意味・解説 

リソース階層による解法

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/04 23:33 UTC 版)

食事する哲学者の問題」の記事における「リソース階層による解法」の解説

もう1つ単純な解法は、リソース(この場合フォーク)に半順序割り当てる方法で、リソース要求順序は常にリソース順序通り行いリソース解放はその逆の順序に行う。そして、順序的に無関係なリソースをあるユニット同時に使うことはないとするリソースフォーク)に1から5までの番号付与し動作ユニット哲学者)は常に番号小さい方のフォーク先にとり、それから番号大きい方のフォークをとる。個々哲学者がとるフォーク番号決まっている。そして、フォークを置く場合番号大きい方を先に置き、それから番号小さい方のフォークを置く。この場合、5人の哲学者のうち4人が同時に番号小さい方のフォークをとると、番号の一番大きフォークだけが残ることになり、5番目の哲学者フォークをとることができない。さらに、その番号が一番大きフォークをとれる哲学者1人かいないため、その哲学者だけが両方フォーク持って食事できる。彼が食事終えてフォークを置くとき、まず番号大きい方から置き、続いて番号小さい方のフォークを置くので、後者フォーク待っていた哲学者がそのフォークをとって食事始められるうになる。 この解法ダイクストラ最初に提案したものの1つである。 リソース階層使った解法デッドロック防げるが、常に実用的とは言えず、特に必要とされるリソース最初から全部把握できない場合には有効ではない。例えば、ある動作ユニット3番5番リソース持っていて、さらに2番リソース必要になったとき、リソース獲得順序を守るために5番3番リソースを一旦解放しない2番リソース獲得できない。そうしてから3番5番という順序獲得し直すデータベース多数レコードアクセスするコンピュータプログラムがあった場合新たなレコードアクセスするために番号大きレコード全て一旦解放しなければならないとしたら、あまり効率的に動作できないだろう。

※この「リソース階層による解法」の解説は、「食事する哲学者の問題」の解説の一部です。
「リソース階層による解法」を含む「食事する哲学者の問題」の記事については、「食事する哲学者の問題」の概要を参照ください。

ウィキペディア小見出し辞書の「リソース階層による解法」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「リソース階層による解法」の関連用語

リソース階層による解法のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



リソース階層による解法のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの食事する哲学者の問題 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS