平成27年 春期 エンベデッドシステムスペシャリスト 午前II 問7

優先度に基づくスケジューリングを行うリアルアイムOSを用いたシステムで、タスクの状態遷移を計測したところ、図結果を得た。
タスクが待ち、実行可能、実行の三つの状態をもつとき、(A)、(B)、(C)に当てはまるタスクの状態の組み合わせとして、適切なものはどれか。

(1) (2) (3)
実行可能 実行 待ち
実行可能 待ち 実行
待ち 実行可能 実行
待ち 待ち 実行


答え エ


解説
基本的にタスクの状態は、実行するための条件が整うまでは“待ち”状態、実行のための条件が整いCPUが開くのを待つのが“実行可能”状態、CPUで処理を行っているのが“実行”状態で、“待ち”→“実行可能”→“実行”と遷移し、“実行”状態のタスクより優先度の高いタスクが“実行可能”になた時に“実行”→“実行可能”に遷移します。
優先度“中”のタスク2について見ると、実行可能状態から実行状態に遷移していることから、タスク2よりも優先度の高いタスク1実行状態から(1)は待ち状態に遷移しています。
優先度“低”のタスク3について見ると、(実行可能状態から遷移している(3)は実行状態で、優先度のもっとも低いタスク3が実行状態になっていることから、タスク2の(2)は実行状態から待ち状態になっていることが分かります。
これをまとめると
 

(1) (2) (3)
待ち 待ち 実行
になります。


キーワード
・スケジューリング

キーワードの解説
  • スケジューリング
    マルチタスクOSやマルチプロセッシング(マルチプロセス)OS、RTOS(Real Time OS)などで、CPU資源をどのタスク(プロセス)に割り当てるかを決める方法で、スケジューリングの方法でシステムの性能に大きく影響するOSの最重要部分です。
    タスク(プロセス)には、通常実行可能状態になったら即処理しなければいけないものと、多少は処理するまでに待ってもよいものがあるので、スケジューリングはこういったタスクに優先度を設け、優先度の高いものから処理を行うようにする。ただし、優先度の低いものが長時間処理されないような状態にならないようにするための工夫が必要である。

もっと、「スケジューリング」について調べてみよう。

戻る 一覧へ 次へ