T-Kernel最新情報

μT-Kernel 2.0

μT-Kernel 2.0は、シングルチップマイコンなどROMやRAMの容量が限られた環境を対象としたリアルタイムOSであるμT-Kernelの最新版です。

近年、ユビキタス・コンピューティングやM2M (machine-to-machine)、IoT (Internet of Things)といった新しいパラダイムが次々と登場しています。TRONプロジェクトではこの実現のため、組み込みシステムに特化したネットワークプロトコルをサポートし、組み込みシステムの原点である究極のリアルタイム性能を追求しています。

μT-Kernel 2.0の最大の特徴は、ソフトウェアの互換性・流通性の実現と、ターゲットシステムに合わせた最適化・チューニングの実現を両立させたことにあります。その実現のため、μT-Kernel 2.0では新たな仕組みとなる「サービスプロファイル」を導入しています。

サービスプロファイル

μT-Kernel 2.0では、従来のμT-Kernel (μT-Kernel 1.0)と比較して、標準化範囲を拡大することで、その上で動作するコードの互換性を強化しました。これにより、T-Kernel 2.0を含む最新のリアルタイムOS間でのミドルウェアやアプリケーションのソースコードの流通性を高めています。

一方、μT-Kernelは小型の組み込み機器向けであることから、実際の機器に合わせた最適化が可能となっている必要があります。そこで、互換性を維持しながら、個別の機器に合わせたチューニングを許容できるように、「サービスプロファイル」という仕組みを導入しました。サーヒスプロファイルでは、μT-Kernel 2.0の実装仕様に関する情報を機械処理可能な形式で記述します。

具体的には、サービスプロファイルはC言語のマクロ定義として提供されます。サービスプロファイルを用いたコード記述を行うことで、異なるハードウェア上に実装されたμT-Kernel 2.0のOS間の差異が吸収され、ミドルウェアやアプリケーションのソースコードの共通化が可能になります。

製品

既に、T-Engineフォーラムの会員会社からμT-Kernel 2.0仕様に準拠した製品も発売されています。

UCT μT-Kernel 2.0 GCC 開発キット (ユーシーテクノロジ株式会社)

ARM Cortex-M3/M4に対応したμT-Kernel 2.0です。UCT μT-Kernel 2.0のソースコードと開発環境(Eclipse、gcc、J-Link)がセットになった開発キットです。

図1

【図1:UCT μT-Kernel 2.0 GCC 開発キットシステム構成図】

T2&μT2リファレンスキット (パーソナルメディア株式会社)

ARM11に対応したμT-Kernel 2.0のSDK付き開発評価キットです。μT-Kernel 2.0を搭載した実際の組み込み機器(実機)と同じ「サービスプロファイル」をユーザーが指定することにより、実機に合わせた開発環境を再現できます。まだ実機の無い段階から実機向けのプログラム開発を進めたり、動作を検証したりすることができます。

図2

【図2:T2&μT2リファレンスキット】

今後の展望

現在、TRONプロジェクトでは、IoT時代の組み込みシステムの未来を見据えたTRONの仕様および実装の見直しを進めています。1984年に始まったTRONプロジェクトのT0(*1)、T1(*2)という時代に続くこの取り組みをT2と位置づけ、精力的に研究開発を進めています。

リアルタイムOSの応用であるさまざまな組み込み機器はすべてネットワーク対応になると想定し、そのベースとなるOSとしてT2は設計されています。いわば「すべてがネットワーク対応になる」というTRONプロジェクト本来のゴールへの最終ステップを示すのが、このTRONプロジェクトの「2.0化」ということになります。

  • (*1)T0 ITRONの時代:ユビキタス・コンピューティングを実現するためには低コストでリアルタイム性が高いノードが多数必要になると想定し、当時未整備だったリアルタイムシステムの開発環境を整備するためにプロジェクトの最初に発表したのがITRONです。ITRONでは、1980年当時のハードウェア資源の制限に合わせた現実的路線として、外部仕様レベルのみを標準化し、実装は分離することにしました。
  • (*2)T1 T-Kernelの時代:近年のハードウェア資源のリッチ化により処理速度は大幅に向上しましたが、引き換えにシステムは巨大化し、実行効率よりも開発効率を上げることが求められるようになりました。そこで開発環境を含めて標準化するという意味でより理想に近いシングルソースのT-Kernelを2003年に公開しました。
図3

【図3:T-Kernelロードマップ(拡大PDFはこちら)】

今後は、μT-Kernel 2.0用の機能拡張(Extension)となるμT2EX(μT-Kernel 2.0 Extension)やマルチコアプロセッサ対応のMP T-Kernelの"2.0化"を予定しています。これらを揃え、より使いやすくなったT-Kernel 2.0シリーズでユビキタス・コンピューティングを実現していきます。