ユーザから見たIIMPカーネル概説 ――組み込み分野でもソフトウェア部品を再利用する時代に
●保護機能の効果
カーネル(リアルタイムOSの核となる部分)が保護機能を持つことにより,以下の目的を達成することができます.
1)セキュリティ確保
新たにダウンロードしたプログラムを実行する際に,既存のシステムに悪影響を与えることを防ぎます.
保護を破られないようにする(すなわち,セキュリティ・ホールをなくす)ためには,完全な保護機能が要求されます.従来のμITRON仕様の共有メモリによるタスク間通信では,完全な保護を実現することは困難でした.
2)信頼性向上
システムの一部分に問題が起こってもほかの部分に影響を及ぼさないようにすることができます.これにより一部のプログラム・モジュールに問題が生じても,システム全体の動作を継続することが可能になります.つまり,信頼性の異なるプログラム・モジュールを同一システムに共存させることができます.
信頼性を向上させるためには,実行時のオーバヘッドを十分に小さくすることも重要です.新しい仕様では,種々のマイクロプロセッサが持つメモリ管理機能を最大限に活用し,きわめて小さなオーバヘッドを実現しています.
3)デバッグ支援
プログラムの動作に障害が生じた場合,問題のある箇所の切り分けが容易になります.これにより比較的大きなシステムを構築する場合にも,デバッグ作業を効率化できます.
組み込み機器の製品開発プロセスに着目してみると,各メモリ空間を保護することによって,いくつものプログラムが絡み合った複雑な潜在バグをいち早く発見できるようになります.この結果,次項でも述べるようにソフトウェアのテスト期間(ひいては機器開発のtime-to-market)を短縮できます.
また,既存のシステムに対してデバッグに必要な機能を追加することも実現しやすくなります.