多段フィードバックキューとは? わかりやすく解説

Weblio 辞書 > 固有名詞の種類 > 製品 > コンピュータ > その他コンピュータ製品 > 並行計算 > 多段フィードバックキューの意味・解説 

多段フィードバックキュー

(multilevel feedback queue から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2013/03/30 19:54 UTC 版)

マルチタスク > スケジューリング > 多段フィードバックキュー

多段フィードバックキュー(Multilevel Feedback Queue)とは、情報工学におけるスケジューリングアルゴリズムの一種である。1970年、レナード・クラインロックが設計した。

設計方針

以下のような設計目標を満たすように意図されている。

  1. 短いジョブを優先する。
  2. I/Oバウンドなプロセス(対話型プロセス)を優先する。
  3. プロセスの性質を迅速に把握し、それに基づいてスケジュールを行う。

詳細

複数のFIFOキューで構成されており、先頭のFIFOが最も優先される。ディスパッチャは上位のFIFOキューから実行可能プロセスを探していき、最初に見つかったプロセスを実行する。多段フィードバックキューは以下のように操作される。

  1. 新しく生成されたプロセスは先頭のFIFOキューの最後尾に置かれる。
  2. キューの先頭のプロセスから処理され、CPUを割り当てられる。
  3. プロセスが終了すれば、システムから削除される。
  4. プロセスが自発的に制御を明け渡した場合、あるいは何らかのリソース待ちでブロックする場合、このキューから一旦外され、再び実行可能状態になったときに以前と同じレベルのキューに入れられる。
  5. プロセスがクォンタム時間を使い切ると、プリエンプトされて1つ下のレベルのキューの最後尾に繋ぎなおされる。
  6. これがプロセスが終了するか、最低レベルのキューにたどり着くまで続けられる。

多段フィードバックキューでは、プロセスはあるレベルのキュー上で実行される機会は(クォンタムを使い切るなら)1回しかなく、即座に1つ下のレベルのキューに行くことになる。I/Oバウンドなプロセスはクォンタムを使い切ることが滅多にないので高いレベルのキューに存在し続けることができる。

UNIXの場合

UNIXオペレーティングシステムは多段フィードバックキューを採用したが、一般に以下のような改良を施している。

  • リソース待ちでブロックしたプロセスが起床した際、以前と同じレベルのキューではなく別のキューに置く。例えば、リソースの種類(ディスクI/O、メモリ、通信など)によって戻すキューのレベルを決めておく。これにより、CPUバウンドだったプロセスがI/Oバウンドに変化する可能性に対応する(例えば対話型で計算の指示を与え、計算が終わると次の指示待ちとなるようなプログラム)。
  • 低レベルのキューにあって実行可能でありながら長期間実行されていないプロセスを徐々に高いレベルのキューに移していく。これによりリソーススタベーションを回避する。




固有名詞の分類


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

辞書ショートカット

すべての辞書の索引

「多段フィードバックキュー」の関連用語

多段フィードバックキューのお隣キーワード
検索ランキング

   

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



多段フィードバックキューのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの多段フィードバックキュー (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS