HOME»ソフトウェア開発技術者平成17年春期»午前問25
ソフトウェア開発技術者平成17年春期 午前問25
問25
OSのプロセス制御におけるプリエンプティブ方式に関する記述として,適切なものはどれか。
- 各プロセスがシステム資源を自主管理できるので,マルチプログラミングに向いている。
- ノンプリエンプティブ方式に比べて,コンテキスト切替えのためのオーバーヘッドが小さい。
- ノンプリエンプティブ方式に比べて,特定のプロセスがプロセッサを独占することが多い。
- プリエンプティブ方式を実現するには,OSがプロセスを強制的に切り替えて実行する機構が必要になる。
- [出題歴]
- 応用情報技術者 H26春期 問16
- ソフトウェア開発技術者 H15春期 問28
分類
テクノロジ系 » ソフトウェア » オペレーティングシステム
正解
エ
解説
「プリエンプティブ」と「ノンプリエンプティブ」は、どちらも複数のタスクを並行して処理を進めるマルチタスクOSにおいて、タスクの切り替えがどのように制御されるかを示したものです。
- プリエンプティブ
- OSがCPUやシステム資源を管理し、CPU使用時間や優先度などによりタスクの状態に切り替える方式
⇒OSの判断でタスクが切り替わる - ノンプリエンプティブ
- タスクの切替をプログラム自身に任せる方式で、プログラムが自発的にCPUを開放した時点で他タスクの実行が開始される
⇒プログラムの判断でタスクが切り替わる
- プリエンプティブ方式では、システム資源はOSが管理します。
- プリエンプティブ方式ではプロセスの切替えが頻繁に起こるので、コンテキスト切替え(複数のタスクを実行するときに、PSW(Program Status Word)や主記憶アドレス空間の内容をタスクごとに切り替る操作)のオーバーヘッドは大きくなります。
- 実行中のプロセスが処理途中であってもOSが強制的に切替えを行うので、特定のプロセスがプロセッサを独占することは少なくなります。
- 正しい。プリエンプティブ方式では、プログラムの動作によらず、OSが強制的にプロセスを切り替える仕組みが必要となります。