令和6年度 春期 応用情報技術者試験 午前 問16
テクノロジ/ソフトウェアノンプリエンプティブ方式のタスクの状態遷移に関する記述として,適切なものはどれか。
出典:令和6年度 春期 応用情報技術者試験 午前 問16
- アOS は実行中のタスクの優先度を他のタスクよりも上げることによって,実行中のタスクが終了するまでタスクが切り替えられるのを防ぐ。
- イ実行中のタスクが自らの中断を OS に要求することによってだけ,OS は実行中のタスクを中断し,動作可能な他のタスクを実行中に切り替えることができる。
- ウ実行中のタスクが無限ループに陥っていることを OS が検知した場合,OS は実行中のタスクを終了させ,動作可能な他のタスクを実行中に切り替える。
- エ実行中のタスクより優先度が高い動作可能なタスクが実行待ち行列に追加された場合,OS は実行中のタスクを中断し,優先度が高い動作可能なタスクを実行中に切り替える。
正解:イ
解説
ノンプリエンプティブ方式は,実行中のタスクが自発的にOSへ制御を返す(自ら中断や終了を要求する)まで,OSが強制的にタスクを切り替えないタスク管理方式です。
選択肢ごとの解説
- ア誤り。優先度を操作して切替えを防ぐ記述は,ノンプリエンプティブの本質的な仕組み(自発的な中断要求)の説明になっていません。
- イ正しい。実行中のタスク自身がOSに中断を要求したときだけタスクが切り替わるのが,ノンプリエンプティブ方式の特徴です。
- ウ誤り。無限ループを検知して強制的にタスクを切り替えるのは,プリエンプティブ方式的な監視の仕組みであり,ノンプリエンプティブの基本動作ではありません。
- エ誤り。優先度の高いタスクの出現によってOSが強制的に実行中のタスクを中断するのは,プリエンプティブ方式の説明です。