基本情報技術者 2011年 春期 午前(科目A) 問22
問題文
組込みシステムでリアルタイムOSが用いられる理由として、適切なものはどれか。
選択肢
ア:アプリケーションがハングアップしても、データが失われない。
イ:期待される応答時間内にタスクや割込みを処理するための仕組みが提供される。(正解)
ウ:グラフィカルなユーザインタフェースを容易に利用できる。
エ:システムのセキュリティが保証される。
🔒 解説は解答すると表示されます
リアルタイムOSの応答時間保証【午前解説】
正解の理由
正解: イ
リアルタイムOS(RTOS)は単に機能を提供するだけでなく、タスクの実行順序や割込み処理のタイミングを制御し、期待される応答時間(デッドライン)内に処理を完了させるためのメカニズムを備えています。具体的にはプリエンプティブ(強制的な割り込みによる切り替え)スケジューリングや優先度ベースの割付、低レイテンシの割込みハンドラ、タイマサービス、タスク同期機構などにより、処理の決定論的な振る舞いを実現します。したがって「期待される応答時間内に処理するための仕組みが提供される」という選択肢が最も適切です。
リアルタイムOS(RTOS)は単に機能を提供するだけでなく、タスクの実行順序や割込み処理のタイミングを制御し、期待される応答時間(デッドライン)内に処理を完了させるためのメカニズムを備えています。具体的にはプリエンプティブ(強制的な割り込みによる切り替え)スケジューリングや優先度ベースの割付、低レイテンシの割込みハンドラ、タイマサービス、タスク同期機構などにより、処理の決定論的な振る舞いを実現します。したがって「期待される応答時間内に処理するための仕組みが提供される」という選択肢が最も適切です。
解法ステップ
- 問題キーワード「リアルタイムOS」「組込み」「用いられる理由」を確認する。
- 「リアルタイム」の意味を頭に描く(応答時間やデッドライン)を優先して検討する。
- 各選択肢を「応答時間の保証」「データ保護」「GUI」「セキュリティ」の視点で当てはめ、最も直接的にリアルタイム性に関するものを選ぶ。
- 排除法:GUIやセキュリティ、単純なデータ保護はRTOS固有の目的ではないと判断する。
選択肢別の誤答解説
- ア: アプリケーションがハングアップしても、データが失われない。
解説→RTOSはタスク管理や復旧補助機能を持つことはあるが、アプリケーションのハングアップ時に自動的にデータを保護する機能を保証するものではありません。ファイルシステムや耐障害機構の設計が別途必要です。 - イ: 期待される応答時間内にタスクや割込みを処理するための仕組みが提供される。
解説→正解。RTOSは優先度ベース・プリエンプション・低レイテンシ割込み処理などでデッドライン対応を支援します。 - ウ: グラフィカルなユーザインタフェースを容易に利用できる。
解説→RTOSはリアルタイム性を重視するため、GUIライブラリを標準で容易に提供するとは限りません。GUIは別レイヤやライブラリで対応するのが一般的です。 - エ: システムのセキュリティが保証される。
解説→RTOSはセキュリティ機能(メモリ保護、ユーザ権限等)を持つことはありますが、セキュリティの「保証」はアーキテクチャ設計、実装、運用ポリシーに依存し、RTOS単体で成り立つものではありません。
よくある誤解
- RTOSは「失敗しない」わけではない:実行時間保証はWCET評価や設計次第であり、OSだけで完全にデータ消失やハングアップを防げるわけではありません。
- RTOS=高機能GUIではない:組込み向けRTOSはリアルタイム性を優先するため、必ずしもグラフィカル機能が容易に使えるとは限りません。
- RTOSがセキュリティを自動的に保証するわけではない:隔離や権限制御が必要で、追加の設計・実装が要求されます。
補足コラム
- スケジューリング例:代表的な方式は優先度固定のRate Monotonic(RM)や動的なEarliest Deadline First(EDF)です。ハードリアルタイムでは優先度ベースのプリエンプションがよく使われます。
- 優先度逆転:低優先度タスクが資源を占有して高優先度タスクが待たされる現象。優先度継承や優先度上書きで対処します。
- WCET(Worst-Case Execution Time):タスクが最悪の場合に要する時間を解析し、 を満たすことを設計で確認します。これがリアルタイム保証の鍵です。
- 用例:自動車のエアバッグ制御や産業用ロボットの軌道制御など、遅延が致命的な用途でRTOSが使われます。
FAQ
Q1: 一般的なOS(Linuxなど)とRTOSの最大の違いは何ですか?
A1: 応答の決定論(レイテンシの上限保証)です。一般OSはスループットや機能性重視で、RTOSはタイミング保証重視です。
A1: 応答の決定論(レイテンシの上限保証)です。一般OSはスループットや機能性重視で、RTOSはタイミング保証重視です。
Q2: RTOSなら必ずデッドラインを守れますか?
A2: いいえ。RTOSはそれを支援する機能を提供しますが、アプリ設計、WCET解析、ハードウェア性能など全体の設計でデッドラインを満たす必要があります。
A2: いいえ。RTOSはそれを支援する機能を提供しますが、アプリ設計、WCET解析、ハードウェア性能など全体の設計でデッドラインを満たす必要があります。
Q3: 軽量RTOSとフル機能RTOSはどう使い分けますか?
A3: リソース制約や必要な機能性に応じます。小規模マイコンでは軽量RTOS、より複雑で多機能な制御が必要ならフル機能のRTOSや拡張ライブラリを選びます。
A3: リソース制約や必要な機能性に応じます。小規模マイコンでは軽量RTOS、より複雑で多機能な制御が必要ならフル機能のRTOSや拡張ライブラリを選びます。
関連キーワード: RTOS、組込み、リアルタイム、デッドライン、スケジューリング、プリエンプション、割込み遅延、優先度逆転、WCET、タスク同期

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

