令和2年度 10月 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問9
テクノロジ/ソフトウェアリアルタイム OS で用いられる,タスクがデッドラインを必ず守るデッドラインスケジューリングでは,周期タスクを図のように次の四つのパラメタ r,C,D,T(0<r+C≦D≦T)の組みで表現することができる。 二つのタスク X,Y を r=0,D=T という条件下で生成した場合,スケジュールが可能となる C,D の組合せはどれか。ここで,タスクは X,Y の順に起動され,優先度は X の方が高い。また,スケジューリングはプリエンプティブ方式であり,OS のオーバヘッドは考慮しない。

出典:令和2年度 10月 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問9
- アタスクX(C=1,D=2),タスクY(C=2,D=3)
- イタスクX(C=1,D=2),タスクY(C=2,D=4)
- ウタスクX(C=2,D=3),タスクY(C=2,D=3)
- エタスクX(C=2,D=4),タスクY(C=3,D=4)
正解:イ
解説
低優先度タスク Y が期限を守れるかどうかは,Y 自身の実行時間 C に加え,高優先度タスク X の周期的な実行によって Y がどれだけ待たされるかを積み上げて判定します(応答時間解析)。選択肢イ(X:C=1,D=T=2,Y:C=2,D=T=4)で検証すると,時刻 0 で X と Y が同時に起動し,まず X が 0~1 で実行されて期限 2 に間に合います。続いて Y が 1~2 まで実行したところで,X の次の周期(2 周期目)が時刻 2 に到来して優先度の高い X が割り込み,2~3 で実行されて期限 4 に間に合います。X の実行が終わった時刻 3 から Y が残り 1 単位を実行し,時刻 4 でちょうど Y の期限 4 に間に合います。他の三つの組合せでは,同様に検証すると X の 2 回目の実行による割込みの分だけ Y の完了が期限を超えてしまい,スケジュール不可能になります。
選択肢ごとの解説
- ア誤り。X(C=1,D=2),Y(C=2,D=3)では,Y は X の 1 回目の実行(0~1)の後に 1~2 まで実行しますが,時刻 2 に X の 2 回目の実行が割り込むため Y の完了は時刻 4 までずれ込み,Y の期限 3 に間に合いません。
- イ正しい。X(C=1,D=2),Y(C=2,D=4)では,X の 2 回目の実行による割込みを受けても,Y は期限である時刻 4 にちょうど間に合って完了します。
- ウ誤り。X(C=2,D=3),Y(C=2,D=3)では,X の 1 回目の実行に 2 単位を要するため Y の開始が遅れ,さらに時刻 3 に X の 2 回目の実行が割り込むため,Y の完了は期限 3 を大幅に超えてしまいます。
- エ誤り。X(C=2,D=4),Y(C=3,D=4)では,X の実行時間が長く Y の実行がその分圧迫されるため,Y は期限である時刻 4 までに 3 単位の実行を終えることができません。