リアルタイムOSとは?
リアルタイムOSとは、処理の締切(デッドライン)を守れるよう、応答時間の上限が見積れることを重視して設計されたOS。優先度に基づくプリエンプティブなスケジューリング、短く予測可能なコンテキストスイッチ時間と割込み禁止区間、タスク間同期・通信機能を備える。
エンベデッドシステムスペシャリスト試験の過去問では10回出題されています(2016年度〜2025年度)。
りあるたいむおーえす
リアルタイムOSの意味
処理の締切(デッドライン)を守れるよう、応答時間の上限が見積れることを重視して設計されたOS。優先度に基づくプリエンプティブなスケジューリング、短く予測可能なコンテキストスイッチ時間と割込み禁止区間、タスク間同期・通信機能を備える。
リアルタイムOSの具体例
μITRON系やPOSIX準拠のRTOSでは、タスク、セマフォ、イベントフラグ、メールボックス、周期ハンドラといったオブジェクトを組み合わせて制御ソフトを構成する。
リアルタイムOSは試験でどう引っ掛けられる?
RTOSは「速い」OSではなく「時間が予測できる」OS。平均スループットは汎用OSの方が高いこともある。
リアルタイムOSと関連する用語
リアルタイムOSが出た過去問
リアルタイムシステムにおいて、アプリケーションタスクの要求によって入出力を行うデバイスドライバのタスク部が、要求された処理が完了したときに行う通知処理はどれか。
正解:イベントフラグを使って入出力要求元のタスクに入出力完了を通知する。
要点:完了通知はOSでなく要求元タスクへ同期機能で行う
デバイスドライバのタスク部は、割込みハンドラから処理完了を受け取ったあと、その事実を要求元のアプリケーションタスクへ知らせる必要がある。リアルタイムOSではイベントフラグやセマフォといった同期機能を使い、完了を待って待ち状態になっているタスクを実行可能状態へ戻す。通知の相手はOSやハードウェアではなく、あくまで待っているタスクである。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 am2 問7(IPA)リアルタイムOSを用いたシステムにおいて、タスクAの優先度が最も低いとする。実行状態又は実行可能状態であるタスクがタスクAだけであるとき、電力の消費を抑えるため…
正解:休止命令を実行して割込みを待つ。
要点:アイドル時は休止命令で割込み待ちにして省電力化する
他に走らせるべきタスクがないとき、最低優先度のタスクが空ループを回し続けると、プロセッサが全力で動き続けて電力を無駄に消費する。この場合は休止(低消費電力)命令を実行してプロセッサを止め、割込みが入ったら復帰する形にすればよい。割込みで復帰できるので応答性を損なわずに消費電力だけ下げられる。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 am2 問9(IPA)リアルタイムOSにおいて、タスクA〜Eの発生時刻、処理時間及び優先度が次のように定められている場合、タスクCの終了時刻はタスクAが発生してから何ミリ秒後となるか…
正解:35
要点:高優先度タスクの発生ごとに実行が中断され完了が遅れる
優先度に基づくプリエンプティブなスケジューリングでは、より優先度の高いタスクが発生した時点で実行中のタスクが中断される。Cは自分より高いBの処理が終わってから開始し、途中で最優先のEが発生した時点で中断され、Eの処理が終わってから残りを実行する。合計すると、Cが完了するのはAの発生から35ミリ秒後になる。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 am2 問10(IPA)リアルタイムOSで用いられる、タスクがデッドラインを必ず守るデッドラインスケジューリングでは、周期タスクを図のように次の四つのパラメタr, C, D, T(0<…
正解:タスクX: C=1, D=2/タスクY: C=2, D=4
要点:周期タスクはC/Dの総和が1以下でなければ成立しない
r=0かつD=Tなので各タスクの周期はデッドラインに等しく、CPU使用率はC/Dの和で見積もれる。使用率が1を超える組合せはどう並べてもデッドラインを守れないため除外され、残るのはX:C=1,D=2とY:C=2,D=4の組合せ(1/2+2/4=1)である。実際、優先度の高いXが各周期の先頭で1単位実行し、残りの時間でYが2単位を確保できるので、周期4の中で両方が間に合う。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 am2 問9(IPA)優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSにおいて、タスクの優先度逆転が発生する可能性があるのはどれか。
正解:排他制御
要点:優先度逆転は排他制御による資源待ちで発生する
優先度逆転は、低優先度タスクが共有資源のロック(排他制御)を保持したまま中優先度タスクにプリエンプトされ、その資源を待つ高優先度タスクが長時間ブロックされる現象である。つまり資源の排他制御がある場面でのみ起こる。対策としては優先度継承や優先度上限(プライオリティシーリング)プロトコルが使われる。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 am2 問10(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。