リアルタイムOSとは?
リアルタイムOSとは、決められた時間内に処理を完了することを最優先に設計されたOS。優先度に基づくプリエンプティブなスケジューリングを備え、応答時間の上限が保証される。
基本情報技術者試験の過去問では3回出題されています(2016年度〜2019年度)。
りあるたいむおーえす
リアルタイムOSの意味
決められた時間内に処理を完了することを最優先に設計されたOS。優先度に基づくプリエンプティブなスケジューリングを備え、応答時間の上限が保証される。
リアルタイムOSの具体例
周期タスクが締切内に完了するかを判定するには、そのタスクの実行時間に加えて、周期内に割り込む可能性のある高優先度タスクの実行時間を差し引いて考える。
リアルタイムOSは試験でどう引っ掛けられる?
「リアルタイム=処理が速い」ではない。求められるのは平均の速さではなく、最悪でも締切を守れること(応答時間の上限保証)で、平均スループットは汎用OSに劣ることもある。またスケジューリングは到着順(FIFO)ではなく優先度に基づくプリエンプティブ方式が基本。
リアルタイムOSと関連する用語
リアルタイムOSが出た過去問
組込みリアルタイムOSで用いられる,優先度に基づくプリエンプティブなスケジューリングの利用方法として,適切なものはどれか。
正解:重要度及び緊急度に応じて処理を行う場合に利用される。
要点:優先度+プリエンプティブ=緊急で重要な処理を即座に実行
優先度に基づくプリエンプティブなスケジューリングとは、実行中のタスクより優先度の高いタスクが実行可能になった時点で、実行中のものを中断して切り替える方式である。優先度は重要度や締切の厳しさを踏まえて設計者が割り当てるので、緊急を要する処理を確実に先に走らせたい場面に適する。組込みリアルタイムOSでは応答期限を守ることが求められるため、この方式が中心的に使われる。
出典:平成28年度 春期 基本情報技術者試験 午前 問16(IPA)優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで、二つのタスクA, Bをスケジューリングする。Aの方がBよりも優先度が高い場合にリアルタ…
正解:Bの実行中にAに起動がかかると、Bを実行可能状態にしてAを実行する。
要点:プリエンプションで奪われたタスクは待ち状態でなく実行可能状態へ
プリエンプティブなスケジューリングでは、実行中のタスクより優先度の高いタスクが実行可能になった時点で、OSが実行中のタスクからCPUを取り上げて切り替える。取り上げられたタスクはCPUさえ空けばすぐ動ける状態なので「実行可能状態(ready)」へ移る。入出力完了などの事象を待つ「待ち状態」へは移らない点が要点である。
出典:平成29年度 秋期 基本情報技術者試験 午前 問18(IPA)優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSで、二つのタスクA、Bをスケジューリングする。Aの方がBよりも優先度が高い場合にリアルタイ…
正解:Bの実行中にAに起動がかかると、Bを実行可能状態にしてAを実行する。
要点:プリエンプションで奪われたタスクは待ちでなく実行可能状態へ
プリエンプティブ方式では、実行中のタスクより優先度の高いタスクが実行可能になった時点でCPUが強制的に奪われる。奪われた側は入出力などの完了を待っているわけではないので「待ち状態」ではなく「実行可能状態」に移り、CPUが空けばすぐ再開できる。優先度の低いタスクが起動しても実行中のタスクは中断されない。
出典:令和1年度 秋期 基本情報技術者試験 午前 問18(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。