第2種情報処理技術者試験
1998年度 = 平成10年度・春期
午前
問33
プロセスの起動から終了までの状態遷移として、
あり得ないもの
はどれか。
ア
起動→実行可能状態→実行状態→終了
イ
起動→実行可能状態→待機状態→実行状態→終了
ウ
起動→実行可能状態→実行状態→実行可能状態→実行状態→終了
エ
起動→実行可能状態→実行状態→待機状態→実行可能状態→実行状態→終了
解答
イ
解説
タスク管理
の主目的は、複数のプログラムに対してCPUを割り当てる
マルチプログラミング
を行うことによって、CPUを効率よく利用することです。
プロセスの
状態
および
状態遷移
は、以下のようになります。
■
実行(running)
CPUを確保し、プログラムを実行している状態。
■
実行可能(ready)
CPUが割り当てられればすぐプログラムを実行できる状態。
■
待機(wait)
要求しているリソース、たとえば入出力機器が、空くのを待っているとか、メッセージが到達するのを待っているとか、何らかの待ち状態にあり、CPUを必要としていない状態。
①
実行可能状態から実行状態へ
CPUスケジューラ(CPU scheduler)
すなわち
ディスパッチャ(dispatcher)
によって、CPUを割り当てられたとき
②
実行状態から実行可能状態へ
より優先度の高いジョブに割り込まれたり、自分に割り当てられた時間すなわち
クオンタム(quantum)
が終了したとき
③
実行状態から待機状態へ
プロセスが入出力動作を起動し、その完了を待たなければならなくなったとき、何らかのリソースが必要となり、それが空くのを待たなければならなくなったとき ※他の遷移と異なり、プロセス自らの操作によって生じる
④
待機状態から実行可能状態へ
入出力動作が完了したり、他のプロセスの命令により待ち状態が解除されたとき
イ
の
実行可能状態→待機状態→実行状態
はありえませんので、これが解答です。