
TOPPERSカーネルのメモリ保護機能の特長と、高信頼性システム開発のポイント
TOPPERSカーネルにおけるメモリ保護
高信頼性システム向けのTOPPERSカーネル(TOPPERS/HRP2、TOPPERS/HRP3、TOPPERS/HRMP3)は、メモリ保護機能を持っています。そのメモリ保護機能は、LinuxやWindowsが持つメモリ保護機能とは少し異なり、リアルタイム組込みシステム用に考えられた実装となっています。具体的には、保護するメモリ領域を切り替える(タスク切り替えなど)際のオーバヘッドを極力小さくするため、MMUではなくMPUを使用します。MMUによるアドレス変換やTLBキャッシュを使用せず、またMPUの設定切り替えの時間は固定であるため、リアルタイム性の確保がしやすくなっています。また、メモリ保護機能のために使用するRAM領域を極力少なくした実装になっています。
保護機能は「保護ドメイン」という概念で実現されています。システムにはカーネルが管理するタスクやメモリが属する1個の「カーネルドメイン」と0個以上の「ユーザードメイン」が存在します。カーネルドメインに属するタスクは、すべてのメモリ領域に対してアクセス可能です。一方で、各ユーザードメインに属するタスクは、自ドメイン以外の領域にはアクセスできません。
メモリ配置や保護ドメインの設定は、静的コンフィギュレーションで行います。コンフィギュレーションファイルに情報を記述しておくと、コンフィギュレーターによりメモリ保護のためのコードやリンカスクリプトが生成され、カーネルのコンパイル/リンク時にオブジェクトに組み込まれます。
このようにTOPPERSカーネルにおけるメモリ保護は、システム稼働時のオーバヘッドを極力小さくするよう実装されているため、ハードリアルタイムが要求されるシステムでも信頼性の高いシステム構築が可能です。
TOPPERSカーネルのメモリ保護については、TOPPERSプロジェクト主宰の高田浩章博士ほかの論文で詳しく解説されています。この論文ではHRP2カーネルのメモリ保護について述べられていますが、メモリ保護の仕様はHRP2カーネルの後継バージョンであるHRP3、HRMP3カーネルでもほぼ同じです。
- 参考論文:「静的なメモリ配置を行うメモリ保護機能を持ったリアルタイムOS」(石川 拓也 本田 晋也 高田 浩章 著)
高信頼性システムを開発するために
メモリ保護機能が必要となるような高信頼性が求められるシステムを開発するには、カーネルの振る舞いや使い方に精通した技術者によるサポートが欠かせません。ユビキタスAIでは、HRP2、HRP3、HRMP3カーネルを含むTOPPERSプロジェクトの開発成果物をベースに、技術サポート・品質保証・知財権保証などを付加したTOPPERS-Proシリーズを販売しています。システム設計・構築時からサポートを受けたい、オープンソースのTOPPERSを使用してシステム構築したが製品化・販売するには不安、という方はTOPPERS-Proシリーズをご検討ください。
より詳しく技術や関連製品について知りたい方へ

製品情報
ティックレス対応高信頼性マルチコアシステム向けRTOS
TOPPERS-Pro/HRMP3
メモリ保護/時間保護可能な高信頼性RTOS。マイクロ秒単位のシステム時刻精度でティックレス動作
- 全製品・サービス一覧
- Linux/Android高速起動
- セキュリティ
- ソフトウェア開発支援・検証
- ミドルウェア
- ネットワークマネジメント
- リアルタイムOS
- BIOS
- AI
- コンサルティング/サービス
- マルチメディア
- エミュレータ/プログラマ
- 産業一覧
Automotive
自動車
Infortainment/ADAS(先進運転支援システム)/ECU/ドライブレコーダー
Industrial
産業用機器
ファクトリーオートメーション(FA)/ビルディングオートメーション(BAS)/オフィスオートメーション(OA)/プロセスオートメーション(PA)/POS
Consumer
民生機器
Digital Camera/Digital TV/IoT家電
Medical / Healthcare
医療 / ヘルスケア機器
手術用ロボット/血糖計/輸液ポンプ/体外血液循環装置/内視鏡/治療機器
Smart Energy
スマートエネルギー
太陽光発電/照明/EV/PHV/蓄電池/燃料電池/スマートメーター
PC / Server
PC / サーバー
ノートPC / デスクトップPC/産業用PC/エンタープライズサーバー/データセンター