平成29年秋期試験問題 午前問18

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで,二つのタスクA,Bをスケジューリングする。Aの方がBより優先度が高い場合にリアルタイムOSが行う動作のうち,適切なものはどれか。

  • Aの実行中にBに起動がかかると,Aを実行可能状態にしてBを実行する。
  • Aの実行中にBに起動がかかると,Aを待ち状態にしてBを実行する。
  • Bの実行中にAに起動がかかると,Bを実行可能状態にしてAを実行する。
  • Bの実行中にAに起動がかかると,Bを待ち状態にしてAを実行する。
正解 問題へ
分野:テクノロジ系
中分類:ソフトウェア
小分類:オペレーティングシステム
解説
プリエンプティブなタスクスケジューリングでは、CPU資源の使用をOSが管理し、タスクを動的に切り替えながら実行していきます。OSの動作は、A・Bの優先度及びA・Bの状態によって変わります。
18.gif
[Aの実行中にBに起動がかかる]
タスクの優先度は「A>B」なので、Bは実行可能状態となり、Aの実行が継続されます。待ち状態は、入出力待ちなどですぐにCPU処理に移れないタスクが遷移する状態なので、Bは待ち状態ではなく実行可能状態に移されます。

[Bの実行中にAに起動がかかる]
タスクの優先度は「A>B」なので、Bは実行可能状態に移され、AにCPU使用権が与えられます。
  • Aの実行が継続されます。
  • Aの実行が継続されます。
  • 正しい。
  • Bは実行可能状態に移されます。

この問題の出題歴


Pagetop