リアルタイムOSとは?りあるたいむおーえす
リアルタイムOSとは、決められた時間内に処理を終えることを最優先に設計されたOS。優先度に基づくプリエンプティブ(実行中のタスクから途中でCPUを取り上げられる)なスケジューリングを備え、高い優先度のタスクが来れば実行中のタスクを中断させて割り込ませる。この仕組みによって応答時間の上限を見積もれる。
最終更新:2026-10-09
この語が出る過去問を解く →背景
汎用OSは全体の処理量を稼ぐ設計で、個々の処理がいつ終わるかは保証しない。ところが自動車のブレーキ制御や工場の機械制御では、遅れた結果は「遅い」ではなく事故になる。平均の速さを諦めてでも最悪値を保証する、という割り切りから生まれたOSで、組込みシステムの分野で必ず問われる。
具体例
周期タスクが締切内に終わるかは、そのタスク自身の実行時間だけでは判定できない。例えば周期10ミリ秒・実行時間3ミリ秒のタスクAに対し、より優先度の高いタスクB(実行時間2ミリ秒)がその周期の間に2回割り込むとする。判定には、Aの3ミリ秒にBの2×2=4ミリ秒を足した7ミリ秒が、周期の10ミリ秒に収まるかを見る。この場合は収まるので締切に間に合う。
試験での引っ掛け
「リアルタイム=速い」は誤りで、求められるのは平均の速さではなく最悪でも締切に間に合うこと。平均スループットは汎用OSに劣ることさえある。またスケジューリングは到着順(FIFO)ではなく優先度基準が基本で、ここを取り違えると計算問題が合わない。
関連用語
出た過去問
出典:平成28年度 春期 基本情報技術者試験 午前 問16(IPA)
組込みリアルタイムOSで用いられる,優先度に基づくプリエンプティブなスケジューリングの利用方法として,適切なものはどれか。
正解:重要度及び緊急度に応じて処理を行う場合に利用される。
要点:優先度+プリエンプティブ=緊急で重要な処理を即座に実行
優先度に基づくプリエンプティブなスケジューリングとは、実行中のタスクより優先度の高いタスクが実行可能になった時点で、実行中のものを中断して切り替える方式である。優先度は重要度や締切の厳しさを踏まえて設計者が割り当てるので、緊急を要する処理を確実に先に走らせたい場面に適する。組込みリアルタイムOSでは応答期限を守ることが求められるため、この方式が中心的に使われる。
出典:平成29年度 秋期 基本情報技術者試験 午前 問18(IPA)
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで、二つのタスクA, Bをスケジューリングする。Aの方がBよりも優先度が高い場合にリアルタ…
正解:Bの実行中にAに起動がかかると、Bを実行可能状態にしてAを実行する。
要点:プリエンプションで奪われたタスクは待ち状態でなく実行可能状態へ
プリエンプティブなスケジューリングでは、実行中のタスクより優先度の高いタスクが実行可能になった時点で、OSが実行中のタスクからCPUを取り上げて切り替える。取り上げられたタスクはCPUさえ空けばすぐ動ける状態なので「実行可能状態(ready)」へ移る。入出力完了などの事象を待つ「待ち状態」へは移らない点が要点である。
出典:令和元年度 秋期 基本情報技術者試験 午前 問18(IPA)
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで、二つのタスクA、Bをスケジューリングする。Aの方がBよりも優先度が高い場合にリアルタイ…
正解:Bの実行中にAに起動がかかると、Bを実行可能状態にしてAを実行する。
要点:プリエンプションで奪われたタスクは待ちでなく実行可能状態へ
プリエンプティブ方式では、実行中のタスクより優先度の高いタスクが実行可能になった時点でCPUが強制的に奪われる。奪われた側は入出力などの完了を待っているわけではないので「待ち状態」ではなく「実行可能状態」に移り、CPUが空けばすぐ再開できる。優先度の低いタスクが起動しても実行中のタスクは中断されない。
出典・参考
公式シラバスの1 基礎理論 > 5. 計測・制御に関する理論 > (2) 制御に関する理論に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。