オペレーティングシステム (全95問中89問目)

No.89

スケジューリング方式をプリエンプティブな処理とノンプリエンプティブな処理に区分するとき,適切に分類されている組合せはどれか。
  • [この問題の出題歴]
  • ソフトウェア開発技術者 H20秋期 問24

分類

テクノロジ系 » ソフトウェア » オペレーティングシステム

正解

解説

プリエンプティブノンプリエンプティブは、共にマルチタスクOS上で実行されているプログラムを切り替えるときの方式です。
プリエンプティブ
OSがCPUやシステム資源を管理し、CPU使用時間や優先度などによりタスクを実行状態や実行可能状態に切り替える方式。
ノンプリエンプティブ
実行プロセスの切替をプログラム自身に任せる方式で、プログラムが自発的にCPUを開放した時点で他タスクの実行を開始する。OSがCPUを管理しないため、1つのプログラムの実行中は他のプログラムの実行は制限される。
プリエンプティブな処理では、CPU資源の使用をOSが管理し、タスクを動的に切り替えながら実行していきます。これに対してノンプリエンプティブな処理では、1つのタスクの処理を開始したらそのタスクが完了する(または中断する)まで処理を続け、その後に次の順番のタスクの処理に取り掛かるのでタスクの横取りが生じません。
一般的なタスクスケジューリング方式のうち、到着順方式と処理時間順方式はノンプリエンプティブな処理に、ラウンドロビン方式と残り処理時間順方式はプリエンプティブな処理に分類されます。

したがって「エ」の組合せだけが適切です。
ラウンドロビン
実行可能状態となった順に従ってタスクに一定のCPU時間を与えていく方式。処理が終わらなかったタスクは実行可能状態の待ち行列の最後尾に移される。各タスクに均等にCPU時間が与えられるためタイムシェアリングシステムに適している。
© 2010-2018 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop