平成19年 春期 ソフトウェア開発技術者 午前 問25

三つのタスクA〜Cを同時に実行させた場合の途中のスケジュール状況が次のとおりであるとき、各タスクの優先度の関係を示したものはどれか。
ここで、“待ち”は、タスクが実行可能状態にあり、CPUの割当て待ちであることを意味する。
また、X > Yは、Xの方がYよりも優先度が高いことを表すものとする。

[タスクの実行途中のスケジュール状況]

 ア  A > B > C
 イ  B > C > A
 ウ  C > A > B
 エ  C > B > A


答え イ


解説
問題の図のタスクの切り替えが発生するごとに番号を振ります。

@  タスクAが実行状態で、タスクBとタスクCは待ち状態です。
A  タスクCが実行状態になって、タスクAが実行可能状態に遷移しているので、タスクの優先度としては、タスクC > タスクAです。
B  タスクBが実行状態になって、タスクCが実行可能状態に遷移しているので、タスクの優先度としては、タスクB > タスクCです。
C  タスクBが待ち状態に遷移し、実行可能状態のタスクAとタスクCから、タスクCが実行状態になっているので、タスクの優先度としては、タスクC > タスクAです。
D  タスクCが待ち状態に遷移し、実行可能状態のタスクAが実行状態になっています。
上記より、タスクの優先度はタスクB > タスクC > タスクA(ア)になっているのがわかります。


キーワード
・タスクの優先度と状態

キーワードの解説

戻る 一覧へ 次へ