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

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


問題文

リアルタイムOSにおいて、タスクA~Eの発生時刻、処理時間及び優先度が次のように定められている場合、タスクCの終了時刻はタスクAが発生してから何ミリ秒後となるか。ここで、優先度は1が最も高く、優先度の高いタスクが優先的に処理されるものとする。また、OSのオーバヘッドは考慮しないものとする。
エンベデッドシステムスペシャリスト 2016年 午前2 問10の問題画像

選択肢

ア:25
イ:30
ウ:35(正解)
エ:40

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

優先度付きタスク実行順序【午前2解説】

正解の理由

優先度の数値は小さいほど高く、より高い優先度のタスクが発生すると、実行中のタスクを中断して処理します。
タスクCは15ミリ秒時点で実行を開始します。20ミリ秒時点で、Cより優先度の高いタスクEが発生するため、Cはいったん中断されます。Eの処理が終わった後にCが残りの処理を行うと、Cの終了時刻は35ミリ秒後です。したがって、該当する選択肢はウです。

解法ステップ

  1. 0~5ミリ秒は、タスクAを処理します。
  2. 5~15ミリ秒は、タスクBを処理します。10ミリ秒時点でタスクCが発生しますが、Bの優先度2はCの優先度3より高いため、Bの処理を続けます。
  3. 15ミリ秒時点でBが終了します。タスクCと、同時に発生したタスクDのうち、優先度が高いCを実行します。
  4. 15~20ミリ秒にCを5ミリ秒処理します。Cには10ミリ秒分の処理が残っています。
  5. 20ミリ秒時点で、優先度1のタスクEが発生します。EがCを中断して20~25ミリ秒に処理されます。
  6. 25ミリ秒からCの残り10ミリ秒を処理するため、Cは35ミリ秒時点で終了します。
時間帯(ミリ秒)実行タスク
0~5A
5~15B
15~20C
20~25E
25~35C

選択肢別の誤答解説

  • ア(25):タスクEの処理終了時刻を、タスクCの終了時刻と取り違えた場合に選びやすい値です。Eの終了後、Cの残りの処理が必要です。
  • イ(30):Eによる中断を考慮せず、Cを15~30ミリ秒に連続して処理した場合の時刻です。
  • ウ(35):20ミリ秒時点でEがCを中断することを考慮した終了時刻です。
  • エ(40):タスクDの処理時間までCより先に加えてしまうなど、実行順序を誤った場合に選びやすい値です。Dの優先度はCより低いため、Cより先には実行されません。

よくある誤解

  • 優先度の数値が大きいほど高優先度だと思い込むことがあります。この問題では「1が最も高い」と明示されています。
  • タスクが発生したら、実行中のタスクが必ず中断されると考えるのは誤りです。中断されるのは、発生したタスクの優先度が実行中タスクより高い場合です。
  • 中断されたタスクの処理時間は失われません。Cは中断前に5ミリ秒処理済みなので、再開後に必要なのは残りの10ミリ秒です。

補足コラム

優先度付きプリエンプティブ方式では、より高い優先度のタスクが実行可能になると、現在のタスクを中断して切り替えます。この問題では、タスクEが発生した20ミリ秒時点でCより優先度が高いため、Eが先に実行されます。一方、優先度の低いDは、Cの処理が終わるまで待機します。

FAQ

タスクDは15ミリ秒に発生していますが、なぜCが先に実行されるのですか?
Cの優先度は3、Dの優先度は4です。数値が小さいほど優先度が高いため、Cが先に実行されます。
Cは20ミリ秒から何ミリ秒後に処理を再開しますか?
Eの処理時間は5ミリ秒なので、25ミリ秒時点でCが処理を再開します。
Cの終了時刻は、Aの発生からの経過時間ですか?
はい。Aは0ミリ秒に発生しているため、Cの終了時刻35ミリ秒は、Aの発生から35ミリ秒後です。

関連キーワード: リアルタイムOS、タスクスケジューリング、優先度、プリエンプション、処理時間
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

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

クイズ画面へ遷移する→

すぐに利用可能!

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

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