優先度ベースのプリエンプティブスケジューリングで周期タスクが完了できる実行時間と周期

正解は ア です。 優先度の高いタスク A は周期ごとに最優先で実行されます。優先度の低いタスク B は,自身の周期 $T_B$ 内でタスク A に割り込まれながら実行されます。 最悪の場合,タスク B の周期 $T_B$ の間にタスク A が起動する回数は最大で $\lceil T_B / T_A \rceil$ 回となります。この間に必要な合計実行時間が $T_B$ 以下であればタスク B は周期内に完了できます。 ア: タスク B の周期 8 ミリ秒の間に,タスク A(周期 4)は最大で $8 / 4 = 2$ 回実行。タスク A の実行時間は $2 \times 2 = 4$ ミリ秒。タスク B の実行時間 3 ミリ秒を加えると $4 + 3 = 7$ ミリ秒 $\le 8$ ミリ秒となり,周期内に完了可能。 イ: タスク B の周期 9 ミリ秒の間に,タスク A(周期 6)は最大で 2 回起動しうる(時刻 0 と時刻 6)。タスク A の実行時間 $3 \times 2 = 6$ ミリ秒,タスク B の実行時間 4 ミリ秒,合計 $6 + 4 = 10$ ミリ秒 $> 9$ ミリ秒となり完了不可。 ウ: タスク B の周期 13 ミリ秒の間に,タスク A(周期 5)は最大で 3 回起動しうる(時刻 0, 5, 10)。タスク A の実行時間 $3 \times 3 = 9$ ミリ秒,タスク B の実行時間 5 ミリ秒,合計 $9 + 5 = 14$ ミリ秒 $> 13$ ミリ秒となり完了不可。 エ: タスク B の周期 15 ミリ秒の間に,タスク A(周期 6)は最大で 3 回起動しうる(時刻 0, 6, 12)。タスク A の実行時間 $4 \times 3 = 12$ ミリ秒,タスク B の実行時間 5 ミリ秒,合計 $12 + 5 = 17$ ミリ秒 $> 15$ ミリ秒となり完了不可。 したがって,タスク B が周期内に処理を完了できる組合せはアとなります。 選択肢 B の周期内の A の実行時間 B の実行時間 合計 B の周期 判定 ア 2×2=4 3 7 8 ○ イ 3×2=6 4 10 9 × ウ 3×3=9 5 14 13 × エ 4×3=12 5 17 15 ×

プリエンプティブな優先度ベースのスケジューリングで実行する二つの周期タスク A 及び B がある。タスク B が周期内に処理を完了できるタスク A 及び B の最大実行時間及び周期の組合せはどれか。ここで,タスク A の方がタスク B より優先度が高く,かつ,タスク A と B の共有資源はなく,タスク切替え時間は考慮しないものとする。また,時間及び周期の単位はミリ秒とする。

出典令和5年度 秋期 応用情報技術者試験 午前 問17
ア
選択肢アの画像
イ
選択肢イの画像
ウ
選択肢ウの画像
エ
選択肢エの画像