必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. 応用情報技術者
  3. 平成24年度春季問題一覧
  4. 平成24年度春季問題22-解答・解説-分析

平成24年度春季問題

問題22

プロセスを、実行状態、実行可能状態、待ち状態、休止状態の四つの状態で管理するプリエンプティブなマルチタスク上で、A,B,Cの三つのプロセスが動作している。各プロセスの現在の状態は、Aが待ち状態、Bが実行状態、Cが実行可能状態である。プロセスAの待ちを解消する事象が発生すると、それぞれのプロセスの状態はどのようになるか。ここで、プロセスAの優先度が最も高く、Cが最も低いものとし、CPUは1個とする。

プロセスを、実行状態、実行可能状態、待ち状態、休止状態の四つの状態で管理するプリエンプティブなマルチタスク上で、A,B,Cの三つのプロセスが動作している。各プロセスの現在の状態は、Aが待ち状態、Bが実行状態、Cが実行可能状態である。プロセスAの待ちを解消する事象が発生すると、それぞれのプロセスの状態はどのようになるか。ここで、プロセスAの優先度が最も高く、Cが最も低いものとし、CPUは1個とする。

解答:エ

<解説>

マルチタスク管理機能においてタスク状態には、「待ち状態(Wait)」,「実行可能状態(Ready)」,「実行状態(Run)」がある。

待ち状態
先行タスクの入出力動作の完了を待っている状態
実行可能状態
実行準備が整っているものの,ほかの優先度の高いタスクが実行状態にあるため実行されていない状態
実行状態
CPUの使用権が割り当てられ実行されている状態

Aが待ち状態、Bが実行状態、Cが実行可能状態である。プロセスAの待ちを解消する事象が発生すると、

  • プロセスAは、待ち状態が解消されたので実行可能状態になる。このときプロセスBは実行状態にあるが、プロセスAよりも優先度が低いのでCPUの使用権がプロセスAに移り実行状態になる。
  • プロセスBは、実行状態にあるが、プロセスAよりも優先度が低いのでCPUの使用権がプロセスAに移り、実行可能状態になる。
  • プロセスCは、実行可能状態にあるが、プロセスA,プロセスBに比べて優先度が低いので状態は遷移せず実行可能状態のままとなる。