プロセスを、実行状態、実行可能状態、待ち状態、休止状態の四つの状態で管理するプリエンプティブなマルチタスクのOS上で、A、B、Cの三つのプロセスが動作している。
各プロセスの現在の状態は、Aが待ち状態、Bが実行状態、Cが実行可能状態である。
プロセスAの待ちを解消する事象が発生すると、それぞれのプロセスの状態はどのようになるか。
ここで、プロセスAの優先度が最も高く、Cが最も低いものとし、CPUは1個とする。
A | B | C | |
ア | 実行可能状態 | 実行状態 | 待ち状態 |
イ | 実行可能状態 | 待ち状態 | 実行可能状態 |
ウ | 実行状態 | 実行可能状態 | 休止状態 |
エ | 実行状態 | 実行可能状態 | 実行可能状態 |
答え エ
【解説】
Aが待ち状態、Bが実行状態、Cが実行可能状態で、プロセスAが実行可能状態になると、プロセスAの優先度は実行状態のプロセスBより高いのでプリエンティブが発生し、プロセスAが実行可能状態から実行状態に、プロセスBは実行状態から実行可能状態に遷移するので
A | B | C | |
エ | 実行状態 | 実行可能状態 | 実行可能状態 |
【キーワード】
・プリエンプティブ