平成18年 秋期 ソフトウェア開発技術者 午前 問27

タスクが実行状態(RUN)、実行可能状態(READY)、待ち状態(WAIT)の三つの状態で管理されるリアルタイムOSにおいて、三つのタスクA〜Cの状態がプリエンプティブなスケジュールによって、図に示すとおりに遷移した。
各タスクの優先度の関係のうち、適切なものはどれか。
ここで、優先度の関係は、“高い > 低い”で示す。

 ア  タスクA > タスクB > タスクC
 イ  タスクB > タスクA > タスクC
 ウ  タスクB > タスクC > タスクA
 エ  タスクC > タスクB > タスクA


答え ウ


解説
説明のため、図のように時間に沿って番号付けるする。

タスクの優先度の判断はRUNとREADYの関係で判断する。READY状態のタスクがあるときに、RUN状態のタスクは、READY状態のタスクよりも優先度が高いことになる。
Aのとき、タスクCがREADY状態で、タスクBがRUN状態なので、B > C である。
Cのとき、タスクAがREADY状態で、タスクBがRUN状態なので、B > A である。
Eのとき、タスクAがREADY状態で、タスクCがRUN状態なので、C > A である。
したがって、各タスクの優先度の関係はB > C > A(ウ)である。


キーワード
・リアルタイムOS
・タスクの状態
・プリエンプティブ

キーワードの解説

戻る 一覧へ 次へ