クミコミ

イー・フォース株式会社

お問い合わせフォーム

μITRONとT-Kernel 国内におけるRTOSカーネル仕様について紹介

μITRONとT-Kernel 国内におけるRTOSカーネル仕様について紹介

国内の組込みRTOS用カーネル仕様のうち、ITRON系が6割のシェアを占めています。ITRONはオープンな仕様であり、特定の会社や国の政策に縛られず、利用者が自由にカスタマイズできます。そのため、産業機器や家電製品など、様々な製品に広く利用されています。ITRON系OSは大きく分けて『μITRON(マイクロアイトロン)』と『T-Kernel(ティーカーネル)』があります。 本記事では、『μITRON』と『T-Kernel』について、共通点や違いを比較し、それぞれの特徴を理解することを目的としています。

μITRONとT-Kernel のあゆみ

μITRONとT-Kernelのあゆみを年表で下図に示します。※クリックで拡大

μITRONとT-Kernelは共にTRON系のOSで、ITRON(アイトロン)が母体となっています。1987年にITRONの初期仕様が決まりました。当時は16bit CPUのパソコンが出始めた頃のため、機器開発には必要最低限の機能のみが採用されました。

その後、μITRON2.0が公開された際にCPUの大きさごとに二つの仕様へ分かれます。8bit/16bit CPU向けのμITRON 2.0と、32bit CPU向けのITRON 2.0です。後年、32bit CPUの低価格化に伴い組込み機器でも32bit CPUが採用されるようになりました。そのため、μITRON 3.0では再び一つに統合され、1999年に現在使用されているμITRON4.0が公開されました。

21世紀初頭に組込みシステムのハードウェア性能の向上に伴い、μITRONの後継として大規模システム向けに仕様が策定され、2004年にT-Kernelは公開されました。ハードウェアの仕様からOSまでをトータルに標準化してソフトウェアの移植性、再利用性を高めることを目的としています。

μITRON 4.0仕様には、ベーシックプロファイルが追加されました。このプロファイルは、μITRON3.0、μITRON4.0、T-Kernelで同等の機能を持つサービスコールを定義しており、T-KernelとμITRON間の移植を容易にすることを目的としています。ベーシックプロファイルに準拠するミドルウェアやアプリケーションは、T-KernelとμITRONの間で簡単に移植できます。

μITRONとT-Kernelの比較

主な特長を下記表に示します。

μITRON T-Kernel
公開時期 1999年 2004年
設計思想 弱い標準化・最適化 強い標準化・移植性
仕様が規定されている範囲 カーネル仕様
(RTOSとしての仕様のみ規定)
カーネル仕様(T-Kernel)
ハードウェア仕様(T-Engine)
モニタ仕様(T-Monitor)
サブシステム管理機能仕様(T-Kernel/Extention)
ライセンス 提供OSベンダにより異なる T-License(最新版:T-License2.0)
但しT-Kernel仕様で開発された商用RTOSのライセンスについては提供OSベンダにより異なる
サブシステム管理機能 提供OSベンダにより異なる
ミドルウェアはOSベンダがオプションとして用意していることが多い
T-Kernel/Extensionとして実装
(大規模システムで標準利用されるプロセス制御やファイル・システムをT-Kernel/ SEとして公開)
OSベンダ eForce、東芝、TOPPERS、ミスポ、ユビキタスAI、ルネサスなど eSOL、パーソナルメディア、ユーシーテクノロジ

仕様の規定範囲

μITRONは『弱い標準化』の設計仕様により、RTOSとしてのカーネル仕様のみ規定されており、ハードウェアに依存する部分は実装依存です。T-Kernelでは『強い標準化』の設計思想により、ハードウェア仕様、モニタ仕様、サブシステムについても定義されています。μITRONとT-Kernelの詳細な仕様、ガイドラインはトロンフォーラムで公開されています。弱い標準化と強い標準化については、次章で解説します。

μITRON
■カーネル仕様  μITRON4.0仕様書(ver.4.03.03)

T-Kernel
■ハードウェア仕様  T-Engine設計ガイドライン(ver1.01.01)
■カーネル仕様    T-Kernel2.0仕様書(ver.2.01.00)
■モニタ仕様          T-Monitor仕様書(ver.1.00.01)
■サブシステム仕様  T-Kernel/Standard Extention仕様書(ver.1.00.02)

標準化の範囲

μITRONとT-Kernelでの大きな違いの一つに『標準化の範囲』が挙げられます。μITRONは『弱い標準化』、T-Kernelは『強い標準化』を設計思想に持ちます。

μITRON:弱い標準化

μITRONはAPIや変数定義を標準化しており、カーネル(RTOSとしての仕様)のみを規定しています。ハードウェアウェアについては規定しておらず、共通化すること実行時性能の低下につながる部分は無理に標準化を行わず、機能を絞っています。


※μITRON Ver4.03.03仕様書の「1.3 ITRON仕様の設計方針」から抜粋

μITRONに向いているケース

システムの規模や性能にあった適切なRTOSを選択したいとき
小規模システムではコスト削減が重要視されるため、MCU内蔵の小さなROM/RAMのみで動作するような、フットプリントの小さいRTOSが選ばれます。 また、高いリアルタイム性能が必要なシステムでは、割込み応答性の高いRTOSが選ばれます。

μITRONとは?入門者向けに意味・特徴・種類を解説

T-Kernel:強い標準化

T-Kernelは強い標準化を特徴とします。標準化の範囲をカーネルのみならず、ハードウェア(T-Engine)、サブシステムの扱い(T-Kernel Extention)まで拡げています。範囲を広げることで実装依存性を排除し、プロセッサが異なるハードウェアに対してもソフトウェアの再利用性と移植性を容易とします

T-Kernelに向いているケース

ソフトウェアの移植性を必要とする場合
T-Kernelは強い標準化のため移植性が高いという特徴があります。システムを他のハードウェアに移植する際に、既存のソフトウェア資産を再利用しやすいため、開発の効率化が期待できます。

ライセンス

μITRONとT-Kernelは、いずれオープンアーキテクチャです。一方で、配布元のトロンプロジェクトの方針により、自社で拡張を加えたとしても、自社のノウハウが詰まったプログラムコードまで公開する義務はなく、商用利用も自由なので、企業にとって大きな利点となり日本国内で広く普及する理由の一つとなりました。

μITRON

μITRONが規定する仕様はカーネルのみです。その為、μITRON仕様を元に、実在するCPUで動くサンプルコードと一緒に企業や団体・個人が『μITRON仕様準拠RTOS』として配布、販売をしています。μITRON準拠RTOSのライセンスについては配布・販売するベンダーにより異なりますが、機能制限された評価版は無償、拡張機能と保守サポートがついた有償版と開発段階に応じて用意されています。

参考:μC3(eForce)のライセンスの場合

μC3のライセンスの種類は3つあります。
・研究開発用プロジェクトライセンス(研究開発のみ可能)
・開発量産用プロジェクトライセンス(研究開発から量産販売まで可能、一つの製品ファミリ)
・プラットフォームライセンス(プロジェクトライセンスの拡張版・複数の製品ファミリが範囲)

開発段階に応じてライセンスのアップグレードが可能です。お客様のご要望をお聞きした上で適切な範囲を設定させて頂きますので、先ずは、担当営業にご相談下さい。

T-Kernel

T-Kernelは、シングル・ワン・ソース(single one source)としてT-Engineフォーラムのwebページからソースコードが入手できます。T-Kernelを利用するためにはT-Licenseに契約する必要があります(最新版はT-License2.0)。

T-License 2.0
T-License 2.0で改定された項目について(TRON Forum : T-License 2.0 FAQ

T-Kernel仕様で開発された商用RTOSは、各ベンダーが独自機能を実装したライセンスつきSDKとして販売しています。機能制限された評価版は無償、拡張機能と保守サポートがついた有償版と開発段階に応じて用意されています。

T-License2.0の特徴

1)ソースコードの複製・改変可
2)改変したソースコードをバイナリ形式で製品に搭載・販売可、ライセンス費用無償
3)T-Kernelを利用した旨の表示が必要
4)T-Kernelのソースコードを元に改良・改変したソースコードを第三者に配布する場合、「T-Kernelトレーサビリティサービス」への登録が必要

まとめ

本記事ではμITRONとT-Kernelを紹介しました。

μITRON仕様のRTOSは、登場からすでに35年以上を経過していますが、現在でも多くの機器で採用されています。その要因の一つにRTOSのコア部分であるカーネルの機能が小さいということが挙げられます。技術の進化でCPUが高性能化されても、ソフトウェアの動作原理は変わりません。そのため、カーネル部分の構造を大きく変える必要がなく効率的に開発ができるのです。

T-Kernelは2004年にμITRONの後継として公開され、国産の人工衛星システムやECU(車載組込みシステム)など、安全性が最重要視される大規模システムへの導入実績をあげています。また、省メモリMCU製品向けのμT-Kernelを公開、IEEE対応など世界標準となる取り組みを着々と進めています。

μITRONとT-Kernelのどちらを選択するか、また別仕様のOSを選択するかは、 性能は勿論、『システムの規模』『 既存資産』『今後の移植性 』など様々な要素を考慮する必要があります。商用RTOSを選択するのであれば、アフターサポートのきめ細やかさなども含めて、総合的に判断し、自身に合った組込みシステムの構築を検討してみてください。

関連記事

初心者でもわかる RTOS開発入門 (1)

組込みで使用するリアルタイムOS(RTOS)とは?入門者向けに意味、種類、特徴を解説

弊社製品「μC3(マイクロ・シー・キューブ)」のご紹介

マイコン向け超軽量カーネルを採用したRTOS「μC3/Compact」

μC3(マイクロ・シー・キューブ)/Compactは、マイコン内蔵の小さなメモリだけで動作するように最適化された、コンパクトなμITRON4.0仕様のRTOSです。ソースコードに直接コンフィグレーションを行うのではなく、付属のコンフィグレータによりGUIベースでRTOS、TCP/IP、デバイスのコンフィグレーションからベースコードの自動生成まで行います。

小さいフットプリント
マイコンの小さなROM/RAMのみで動作するように最適化された最小2.4Kbyteのコンパクトなカーネル。メモリ容量が小さい安価なデバイスを使用する事ができます。
コーディング不要のベースコード自動生成機能
製品に付属されているμC3/ConfiguratorにてGUIベースでRTOS、TCP/IPの設定ができます。RTOSの初心者でも簡単に開発をスタートすることができます。
豊富なCPUサポート
業界随一のプロセッササポート実績があります。また、現在未対応のものでもお客様のご依頼に合わせて随時対応をさせていただいております。
省電力対応
デフォルトで省電力機能がついているため、システム全体の省電力に貢献します。

高性能リアルタイム処理向けRTOS「μC3/Standard」

μC3(マイクロ・シー・キューブ)/Standardは、μITRON4.0のスタンダードプロファイルをベースに、32/64ビットプロセッサが搭載された組込みシステム向けのRTOSです。高性能プロセッサがより高度なリアルタイム制御に耐えられるよう、割込み禁止区間を極力なくし、割込み応答性を最重要課題として設計したRTOSです。

ARM社の Cortex-A、Cortex-R、Cortex-Mシリーズだけでなく、Renesas社の RXシリーズなど、最新プロセッサに対応しております。

32/64bitの高性能プロセッサに最適化
割り込み応答性を高め、32/64bitの高性能プロセッサ向けに最適化されたμITRON4.0仕様のカーネル。
豊富なプロセッサ・サポート
業界随一のプロセッササポート実績があります。また、現在未対応のものでもお客様のご依頼に合わせて随時対応をさせていただいております。
マルチコア対応
RTOSとLinuxの共存を実現した「μC3+Linux」、AMP型のマルチコア拡張を追加した「μC3/Standard+M」などのラインアップもございます。
豊富なデバイスドライバを用意
μC3にて動作確認済みのオプション製品をご用意。I2C, SPI, GPIO, SDなどのデバイスドライバをオプションで用意。(UART, Timer, INTCはμC3に、EthernetドライバはμNet3に付属しています。)

資料請求はこちらから

弊社製品リアルタイムOS(RTOS)やTCP/IPのプロトコルスタックをはじめとしたミドルウェアなどのプロダクトガイドです。詳しい資料をご希望の方は、下記よりダウンロードしてください。

資料ダウンロード(無料)