平成25年度春期 エンベデッドシステムスペシャリスト試験 午前II 問8
【問題8】
リアルタイムOSで用いられる、タスクがデッドラインを必ず守るデッドラインスケジューリングでは、周期タスクを図のように次の四つのパラメタ n, C, D, T (0 < r + C ≦ D ≦ T) の組みで表現することができる。

二つのタスクX, Yをr = 0, D = Tという条件下で生成した場合、スケジュールが可能となるC, Dの組合せはどれか。ここで、タスクはX, Yの順に起動され、優先度はXの方が高い。また、スケジューリングはプリエンプティブ方式であり、OSのオーバヘッドは考慮しない。
【解説】
デッドラインスケジューリングの条件
各タスクのスケジュールが可能であるためには、以下の条件を満たす必要があります:
合計利用率 U = (C_X / T_X) + (C_Y / T_Y) <= 1
ここで、Cは実行時間、Tは周期(D = Tの場合、Tはデッドラインでもある)。
各選択肢の確認
ア: タスクX (C = 1, D = 2), タスクY (C = 2, D = 3)
U = (1/2) + (2/3) = 1.166… (条件を満たさない)
イ: タスクX (C = 1, D = 2), タスクY (C = 2, D = 4)
U = (1/2) + (2/4) = 1 (条件を満たす)
ウ: タスクX (C = 2, D = 3), タスクY (C = 2, D = 3)
U = (2/3) + (2/3) = 1.666… (条件を満たさない)
エ: タスクX (C = 2, D = 3), タスクY (C = 3, D = 4)
U = (2/3) + (3/4) = 1.25 (条件を満たさない)
【答え】
イ: タスクX (C = 1, D = 2), タスクY (C = 2, D = 4)
出典:平成25年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問8