最新T-Kernelの活用テクニック(1) ―― 小規模システム向けμT-Kernelとは何か
● μT-Kernel登場の背景
T-Engineプロジェクトが想定した組み込み機器の大規模化を示すデータがあります.図6によると,1Mバイトを超えるサイズのプログラムを搭載した機器の割合がここ10年で24%から44%へと,約2倍に拡大していることが分かります.このアンケートでは,具体的にどのような機器でプログラム・サイズが増大しているかまでは示されていませんが,携帯電話やビデオ・レコーダ,カー・ナビゲーション・システムなど,確かに身の周りには複雑化している機器があふれています注1.
注1;個人的には複雑化しているか否かの分かれ目は,マニュアル(取扱説明書)を見ずに基本の操作ができるか否かではないかと思う.
図6 組み込みシステムのプログラム・サイズの遷移
「2006年度 組込みシステムにおけるリアルタイムOSの利用動向に関するアンケート調査報告書」より引用
http://www.assoc.tron.org/jpn/research/
ところが,一方で64Kバイト未満のプログラム・サイズの機器もコンスタントに開発され続けています.次世代リアルタイムOSとして,より大規模なシステムを中心にT-Kernelの採用が進んできましたが,最近ではこのような小規模な組み込み機器にもT-Kernelを利用したいという要望が強まってきました.
T-Kernelは,組み込み機器で利用することを前提にソース・コードがすべて公開されており,しかも,移植しやすいように可能な限りC言語で記述されています.ソース・コードの大きさも一人の開発者が十分に把握できる程度です.つまり,小規模な機器であってもT-Kernelを移植すれば十分に対応可能です.
T-Kernelは開発プラットホームとしてだけでなく,実行プラットホームとしても利用可能な設計になっています.ただ,小規模な機器であれば当然使用可能な資源が限られるので,T-Kernelをデフォルト構成のまま動作させるのは現実的ではありません.また,T-Kernelを改造して対応するにしても,同じような改造を各社で個別に実施するのは明らかに効率が悪いといえます.それよりも小規模な組み込み機器に対応したT-Kernelをあらかじめ用意しておく方が,組み込み業界全体から見れば効率が良いことになります(図7).
図7 T-KernelとμT-Kernelの小規模な組み込み機器への適応
このような観点から用意されたのがμT-Kernelです.