過去問解きまくり研究所 ホーム

平成27年度 春期 午前Ⅱ 問10

オペレーティングシステム

プリエンプティブの問題

優先度に基づくプリエンプティブなスケジューリングで動作する,二つの周期タスクA,Bがある。AはBよりも優先度が高く,周期は2ミリ秒,実行時間は1ミリ秒である。Bの周期が10ミリ秒のとき,1周期中に実行を完了できるBの実行時間は最大何ミリ秒か。ここで,A,B以外のタスクはなく,タスク切替えによるオーバヘッドはないものとする。

答えと解説を見る

✓ これが正解イ5

解説

Aが10ミリ秒中に5ミリ秒使うので、Bは最大5ミリ秒です。

優先度の高いタスクAは、周期2ミリ秒ごとに起動し、そのたびに1ミリ秒実行します。プリエンプティブなスケジューリングなので、Aが起動すると実行中のBは中断され、Aが先に実行されます。Bの周期10ミリ秒の間にAは10÷2=5回起動し、合計で1ミリ秒×5回=5ミリ秒CPUを使います。残る10−5=5ミリ秒が、Bの使える時間の上限です。AとBの周期の始まりがそろう場合でも、Aの実行の合間にBが1ミリ秒ずつ5回動けば、周期の終わりまでに5ミリ秒分を実行し終えます。周期の長いタスクが使える時間は、短い周期のタスクがその間に使う時間を差し引いて求めます。

ほかの選択肢はなぜ違うのか

出典:平成27年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問10

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)