戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

エンベデッドシステムスペシャリスト 2015年 午前2 問10


問題文

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

選択肢

ア:3
イ:5(正解)
ウ:7
エ:9

🔒 解説は解答すると表示されます

周期タスクの実行可能時間【午前2解説】

正解の理由

10ミリ秒の間に、優先度の高いタスクAは周期2ミリ秒ごとに実行されます。Aは1回の実行に1ミリ秒かかるため、10ミリ秒間にAが使う時間は合計5ミリ秒です。
したがって、残りの時間はタスクBが使えます。
よって、Bが1周期内に実行を完了できる最大時間は5ミリ秒です。該当するのは イ です。

解法ステップ

  1. Bの1周期を確認します。Bの周期は10ミリ秒です。
  2. その間にAが何回実行されるかを求めます。
    回です。
  3. Aの合計実行時間を求めます。
    ミリ秒です。
  4. Bが使える時間を求めます。
    ミリ秒です。

選択肢別の誤答解説

  • ア:3ミリ秒
    Aが使う時間を正しく計算できていません。Aは10ミリ秒の間に5回実行され、合計5ミリ秒を使います。
  • イ:5ミリ秒
    Aが使う5ミリ秒を、Bの周期10ミリ秒から差し引いた値です。
  • ウ:7ミリ秒
    Aの実行時間を合計3ミリ秒と見積もる計算ですが、Aは5回実行されるため、実際には5ミリ秒を使います。
  • エ:9ミリ秒
    Aの実行による影響をほとんど考慮していない値です。Aの実行時間を差し引く必要があります。

よくある誤解

  • 周期10ミリ秒の中でAは4回だけ実行される
    0ミリ秒から数えると、Aは0、2、4、6、8ミリ秒に実行されます。したがって5回です。10ミリ秒時点の次の実行は、次の周期に属します。
  • 優先度が高いタスクは、周期全体を占有する
    優先度が高くても、Aが実行するのは各回1ミリ秒です。それ以外の時間にはBが実行できます。
  • プリエンプティブ方式では、タスク切替えの時間も差し引く
    問題では切替えオーバヘッドがないと指定されています。そのため、AとBの実行時間だけを考えます。

補足コラム

AのCPU使用率は、実行時間を周期で割って求められます。
Bが1周期に5ミリ秒実行する場合、BのCPU使用率も次のとおり50%です。
合計使用率は100%となり、CPUの実行時間をAとBで使い切る計算になります。切替えオーバヘッドなどがないという条件が重要です。

FAQ

Q. AはBより優先度が高いので、BはAの実行後にしか動けませんか?
Aが実行中はBが動けませんが、Aが実行していない時間にはBが動けます。Bの実行は分割されてもよく、問題では1周期中に合計何ミリ秒実行できるかを求めています。
Q. Aの周期がBの周期のちょうど5分の1であることは関係しますか?
関係します。Bの1周期10ミリ秒の間に、Aが5回実行されると簡単に数えられます。

関連キーワード: プリエンプティブスケジューリング、優先度、周期タスク、CPU使用率
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

エンベデッドシステムスペシャリストを
クイズ形式で学習しませんか?

クイズ画面へ遷移する→

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について