RTEMS

RTEMS(Real-Time Executive for Multiprocessor Systems)は、組み込みシステム用に設計された、フリーでオープンソースのリアルタイムオペレーティングシステム(RTOS)です。その名称は、当初「Real-Time Executive for Missile Systems」の略でしたが、後に「Real-Time Executive for Military Systems」となり、現在の頭字語へと変化しました。RTEMSの開発は1980年代末に始まり、1993年頃にはFTPでダウンロード可能になりました。現在、RTEMSプロジェクトは、OAR Corporationがユーザー代表を含む運営委員会と協力して運営しています。

RTEMSは、リアルタイム性が求められる組み込みシステム向けに特化しており、以下に示す幅広いプロセッサアーキテクチャに対応しています。

ARM
Atmel AVR
Blackfin
Freescale ColdFire
TI C3x/C4x DSPs
H8/300
Intel 80386、Pentium、およびそれ以降のx86アーキテクチャ
Lattice Mico32
68k
ルネサス エレクトロニクス M32C
ルネサス エレクトロニクス M32R
MIPS
Nios II
PowerPC
ルネサス エレクトロニクス SuperH
SPARC

RTEMSは、POSIXやμITRONといった各種オープンAPI標準をサポートするように設計されています。元々のAPIは、Real-Time Executive Interface Definition(RTEID)仕様に基づいた「Classic RTEMS API」と呼ばれています。さらに、FreeBSDのTCP/IPスタックや、NFS、FATなどの様々なファイルシステムもサポートしています。

RTEMSは、メモリ管理プロセス管理は行いません。POSIXの用語で言うと、シングルプロセス・マルチスレッド環境を実装しています。そのため、POSIXサービスのうち、メモリマッピング、プロセス生成、共有メモリといった関連機能は提供されていません。RTEMSは、POSIX Profile 52、すなわち「シングルプロセス、スレッド、ファイルシステム」にほぼ相当すると言えます。

RTEMSは、そのリアルタイム性と柔軟性から、様々な分野で利用されています。特に、EPICSコミュニティでは、RTEMSのサブミッタとして活動している人が複数います。また、宇宙開発分野では、SPARC、ERC32、LEON、MIPS Mongoose-V、Coldfire、PowerPCといったマイクロプロセッサが使用されることが多く、RTEMSがその能力を発揮しています。例えば、マーズ・リコネッサンス・オービターでは、ElectraソフトウェアラジオにRTEMSが採用されています。

RTEMSは、修正版GPLライセンスで配布されています。このライセンスの特筆すべき点は、RTEMSオブジェクトと他のファイルをリンクした場合でも、実行ファイル全体をGPLとする必要がないという点です。この点は、GNAT Modified General Public Licenseに準拠していますが、Ada言語に限定されるものではありません。

関連情報

公式サイト
公式ウィキ
* RTEMS Centre

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。