Introduction to the ITRON Project

− Open Real-Time Operating System Standards for Embedded Systems −

(社)トロン協会 ITRON専門委員会
http://www.itron.gr.jp/


[日本語] [英語] [日本ミラー] [米国ミラー]

ITRONプロジェクトは,機器組み込みシステム用のリアルタイムOSと,それ に関連する仕様の標準化をおこなうプロジェクトである.プロジェクトの開始 から現在までに,一連のITRONリアルタイムカーネル仕様を策定・公開してき た.その中で,民生機器に代表される小規模な組み込みシステム向けに設計さ れたμITRONリアルタイムカーネル仕様は,数多くの 8bit,16bit, 32bit の MCU (Micro Controller Unit) 上に実装され,また極めて多くの組み込み機器 に利用されており,この分野における業界標準仕様となっている.我々は,こ のような実績をベースとして,標準化の対象をカーネル仕様から周辺の仕様へ と広げ,組み込みシステム構築技術と ITRON仕様の更なる発展のための活動を おこなっている.

目次

1.組み込みシステムの現状と特徴
2.組み込みシステム用のリアルタイムOSに対する要求
3.ITRON仕様OSの設計方針
4.ITRON仕様OSの現状
5.最近の成果と現在の活動
6.普及・広報活動
7.おわりに

1.組み込みシステムの現状と特徴

マイクロプロセッサ技術の発展により,機器組み込みシステムの応用分野 は拡大の一途をたどっている.当初は,工場の生産ラインの制御など産業用途 が中心であったものが,通信機器やオフィス機器などの業務機器分野,さらに 近年は,自動車やオーディオ/ビデオ機器,テレビ,携帯電話,電子楽器やゲ ームマシン,洗濯機,エアコン,照明器具などの民生機器分野に急激に拡大し, 今では身の回りのほとんどの電気/電子機器に組み込みシステムが応用される ようになっている.

それと並行して,制御対象となる機器の高機能化や複合化に伴って,組み 込みシステムの大規模化・複雑化も著しい.それに加えて,最近顕著になって きた機器のデジタル化の流れも,マイクロプロセッサの高性能化によりソフト ウェアで実現可能な処理が増えていることとあいまって,組み込みシステムの 重要性を増す結果となっている.

一般に,民生機器に代表される小規模な組み込みシステムには,産業機器 に代表される規模の大きい組み込みシステムと比較して,機器の製造個数が極 めて多く,単価が安いという特徴がある.そのため,大規模な組み込みシステ ムでは開発コストを下げることが重視されるのに対して,小規模な組み込みシ ステムでは最終製品の製造コストを下げることが重視される傾向にある.また, 特に民生機器分野では,厳しい機器開発競争からシステム開発期間の短縮に対 する要求が著しく,また一度販売した機器のソフトウェアを改修することはほ とんどないことから,システム開発のライフサイクルが極めて短いことも特徴 の 1つとなっている.

小規模な組み込みシステムの分野では,プロセッサコアに加えて,ROM, RAM,汎用I/Oデバイス,用途に応じたデバイスなどを 1チップ化した MCU (Micro Controller Unit; 1チップマイコンと呼ばれる場合もある) が広く使 われている.MCU上のソフトウェアを開発する際には,最終製品のコストダウ ンの要請から,ハードウェア資源の制約が問題になる.とりわけメモリ容量の 制約は厳しく,典型的な 16bit MCU で,ROM が 64KB,RAM が 1KB 程度,少 し大規模なものでもそれぞれ 128KB,4KB 程度のメモリ容量しか持っていない. また,高いコストパフォーマンスが求められる MCU はしばしばアプリケーショ ンに最適化して設計されることから,プロセッサコアの種類が極めて多いこと も特筆すべき点である.

このような小規模な組み込みシステムの分野においても,ソフトウェアの 大規模化・複雑化や開発期間短縮に対する要求から,ソフトウェアの生産性の 向上は重要な課題となっており,C言語などの高級言語を使うケースや, μITRON仕様などのリアルタイムOS を用いるケースが一般的になりつつあ る.

2.組み込みシステム用のリアルタイムOSに対する要求

マイクロプロセッサの高性能化が進む一方で,民生機器など大量生産され る機器への応用が広がっていることから,組み込みシステムのコストパフォー マンス向上に対する要請は以前と同様極めて強いものがある.また,組み込み システムの応用分野の拡大に伴って,リアルタイムOS を扱うべきソフトウェ ア技術者も増加しており,システム設計者やプログラマの教育の重要性も高 い.

このことを裏付けるデータとして,トロン協会が 1997年末から1998年頭に 日本国内において実施したアンケート調査結果によると,組み込みシステム用 のリアルタイムOS の問題点として,「使いこなせる技術者が不足またはいな い」「OSにより仕様の違いが大きく切り替えの負担が大きい」という教育上や 標準化の問題を挙げた回答者が最も多く,「OSのサイズや使用リソースが大き すぎる」「性能・機能が要求条件に適合しない」というリアルタイムOS の適 合性に関する問題を挙げた回答者がそれに次いで多くを占めている (図-1).

図-1: リアルタイムOSの問題点
(トロン協会によるアンケート調査結果, 1997年末〜1998年頭, 日本)

このような背景から我々は,概念や用語の統一といった教育面を特に重視 して,広い範囲の組み込みシステムに共通に適用できるリアルタイムOS仕様の 標準化が必要であると考え,ITRONプロジェクトに取り組んできた.

組み込みシステム用のリアルタイムOS仕様の標準化にあたって最も困難な 問題として,ハードウェアの持つ性能を最大限に発揮させるという要求と,ソ フトウェアの生産性を向上させるという要求のトレードオフの解決が挙げられ る.ハードウェア資源の制約が厳しいMCU ベースのシステムにおいては,与え られたハードウェアの性能を最大限に発揮できることが,リアルタイムOS を 採用する前提条件となる.一方で,ソフトウェア生産性の向上はリアルタイム OS を用いる最大の動機であるが,ソフトウェアの生産性を向上させるために OS が提供するサービスの抽象度を上げたり,用いるハードウェアによらずに ソースコードレベルの完全なポータビリティを確保しようとすると,OS が提 供するサービスとハードウェアアーキテクチャとのギャップが実行時のオーバ ヘッドにつながり,ハードウェアの持つ性能を最大限に発揮させることが難し くなる.

この 2つの要求の最適なトレードオフは,組み込み機器の性質に大きく依 存する.具体的には,小規模なシステムにおいては,最終製品のコストダウン の要求から,実行時性能を低下させてまでソフトウェアポータビリティを向上 させる意義は少ない.それに対して,既存のソフトウェア部品を用いる場合や, ソフトウェアの再利用が不可欠な規模の大きいシステムにおいては,ソフトウェ アのポータビリティは極めて重要な要求となる.さらに,2つの要求の最適な トレードオフは,マイクロプロセッサ技術の発展によって常に変化してい る.

また,小規模なシステムと大規模なシステムでは,リアルタイムOS に求め る機能にも大きな違いがある.小規模な組み込みシステムに,必要性の低い高 度な機能を持った OS を用いると,プログラムサイズが大きくなり,実行時性 能も低下する結果となる.逆に大規模なシステムでは,高度な機能を持った OS を用いてソフトウェアの生産性向上を図るべきである。

以上より,組み込みシステムの規模や性質に応じて,リアルタイムOS に対 する要求は大きく異なることがわかる.システムの規模や性質毎に別々のリア ルタイムOS仕様を定義することも可能ではあるが,ソフトウェア技術者の教育 面やソフトウェア部品の流通性,開発支援ツールのサポート面を考えると,多 種多様な組み込みシステムに共通に適用できるスケーラビリティを持ったリア ルタイムOS仕様を定義することが望ましい.

組み込みシステム用のリアルタイムOS仕様に対する以上の要求を簡単に整 理すると,次のようになる.

以上で述べた技術的な要求事項に加えて,仕様が真の意味でオープンであ ることも重要な要件となる.組み込みシステムが身の回りのあらゆる電気/電 子機器に適用されることを考えると,仕様書が誰にでも入手可能な形で一般に 公開されるだけでなく,それに基づいた製品を誰もが自由にロイヤリティなし で実装・販売できることも満たさなくてはならない要件である.

3.ITRON仕様OSの設計方針

前節で述べた要求事項を満たすために,ITRON仕様OS を設計するにあたっ て,以下の設計方針を設定している.

図-2: μITRON仕様における適応化

これらの設計方針のいくつかに共通するコンセプトとして,「弱い標準化」 がある.弱い標準化とは,共通化すると実行時性能の低下につながるような部 分については無理に標準化をおこなわず,ハードウェアやアプリケーションに 依存して決めるべき部分として残すアプローチのことをいう.弱い標準化の考 え方により,多種多様なハードウェアの上で,その性能を最大限に発揮させる ことが可能になる.

4.ITRON仕様OSの現状

我々は,1984年にプロジェクトを開始して以来,組み込みシステム用の標 準リアルタイムOS仕様について検討をおこない,その結果として,一連の ITRONリアルタイムカーネル仕様を策定・公開してきた.カーネル仕様に重点 を置いて標準化をおこなってきたのは,小規模な組み込みシステムでは,カー ネル機能のみが利用されるケースが多いためである.

最初の ITRON仕様は,1987年に ITRON1仕様という形でまとめた.ITRON1仕 様に従っていくつかのリアルタイムカーネルが開発・応用され,仕様の適用性 の検証に重要な役割を果たした.その後,小規模な 8〜16bit の MCU に適用 するために機能を絞り込んだμITRON仕様 (Ver 2.0),逆に大規模な 32bit の プロセッサに適用するための ITRON2仕様の検討を進め,共に 1989年に仕様を 公開した.この内μITRON仕様は,極めて限られた計算能力とメモリ容量しか 持たない MCU上でも実用的な性能を発揮することができたために,多くの種類 の MCU用に実装され,極めて多くの組み込みシステムに応用された.実際,ほ とんどすべての日本メーカ製の MCU 用にμITRON仕様のカーネルが開発されて いるといっても過言ではない.

このように,μITRON仕様が広範な分野に応用されるにしたがって,それぞ れの機能の必要性や性能に対する要求がより正確にわかってきた.また,MCU の適用分野が広がるに従って,μITRON仕様カーネルを 32bit MCU用に実装す るという仕様設計時に想定していなかった適用例も出てきた.そこで,それま での ITRON仕様を再度見直し,8bit から 32bit までの各規模の MCU に適用 できるスケーラビリティを持った仕様を策定する作業をおこなった結果, 1993年にμITRON3.0仕様を公開した.μITRON3.0の仕様書(英語版)は,ITRON ホームページからダウンロードすることができる.μITRON3.0仕様カーネルの 主な機能を表-3 に示す.

表-3: μITRON3.0仕様カーネルの主な機能
  1. タスク管理機能
    • タスクの状態を直接操作したり,参照したりする機能.
  2. タスク付属同期機能
    • タスク自身が持つタスク間同期機能.
  3. 同期・通信機能
    • タスクとは独立した同期・通信機能で,セマフォ,イベントフラグ,メ イルボックスの 3つの機能が含まれる.
  4. 拡張同期・通信機能
    • タスクとは独立した同期・通信機能のうち高度な機能を持つもので,メッ セージバッファ,ランデブポートの 2つの機能が含まれる.
  5. 割込み管理機能
    • 外部割込みに対するハンドラを定義する機能.
    • 外部割込みの禁止/許可などをおこなう機能.
  6. メモリプール管理機能
    • ソフトウェアによって,メモリプールの管理やメモリブロックの割当を おこなう機能.
  7. 時間管理機能
    • システムクロックの設定や参照をおこなう機能.
    • タスクを遅延させる機能.
    • 時間をきっかけに起動されるタイマハンドラを扱う機能.
  8. システム管理機能
    • システム全体の環境を設定したり参照したりする機能.
  9. ネットワークサポート機能
    • 疎結合ネットワークの管理やサポートをおこなうための機能.

1998年9月1日現在 トロン協会に登録されている ITRON仕様リアルタイムカ ーネル製品の一覧を表-4に示す.表からもわかる通り,登録されているものだ けでも約30種類のプロセッサ用に 40を越える製品がある.まだ登録はされて いないが,米国のソフトウェアベンダが ITRON仕様カーネルをサポートする例 も出てきている.また,μITRON仕様カーネルは,規模が小さく比較的容易に 実装することができるために,ユーザが自社内専用に開発しているケースも多 く,製品化されているもの以外にも多くの実装例がある.また,フリーソフト ウェアとして配付されているμITRON仕様カーネルも,複数種類ある.

表-4: ITRON仕様リアルタイムカーネル製品一覧
(1998年9月1日現在 トロン協会に登録されているもの)
仕様 製品名 対象プロセッサ メーカ名
μITRON2.0 TR90 TLCS-90 (株)東芝
HI8-3X H8/300 (株)日立製作所
HI8-EX H8/500 (株)日立製作所
HI8 H8/500 (株)日立製作所
MR3200 M32ファミリー 三菱電機セミコンダクタシステム(株)
MR7700 7700ファミリー 三菱電機セミコンダクタシステム(株)
Softune REALOS/907 F2MC-16LX/16L/16/16H/16Fファミリー 富士通(株)
MORTOS/n682 MC68020 (株)モアソンジャパン
RX78K/III 78K/IIIシリーズ 日本電気(株)
UDEOS/i86 8086シリーズ 東芝情報システム(株)
UDEOS/m00 68000シリーズ 東芝情報システム(株)
NORTi/86 8086 宮崎システム設計事務所
AAAOS86 8086系 スリーエース・コンピュータ(株)
Softune REALOS/896 F2MC-8Lファミリー 富士通(株)
HI8-S H8/500 (株)日立製作所
TR900 TLCS-900 (株)東芝
RX78K/II 78K/IIシリーズ 日本電気(株)
RX78K/0 78K/0シリーズ 日本電気(株)
HI8-3H H8/300H (株)日立製作所
MORTOS/n68 MC68000 (株)モアソンジャパン
MORTOS/n98 8086系 (株)モアソンジャパン
HI-SH7 SH (株)日立製作所
MR1600 M16ファミリー 三菱電機セミコンダクタシステム(株)
MR3800 38000シリーズ 三菱電機セミコンダクタシステム(株)
NORTi/H83 H8/300H (有)宮崎システム設計事務所
NORTi/Z80 Z80 (有)宮崎システム設計事務所
RX78K/IV 78K/IVシリーズ 日本電気(株)
NORTi/SH SH-1, SH-2 (有)宮崎システム設計事務所
NORTi/H85 H8/500 (有)宮崎システム設計事務所
NORTi/68K 68000, 68010, CPU32 (有)宮崎システム設計事務所
HI8-2600 H8S (株)日立製作所
PrKERNEL SH2, VR4100/VR4300, TMS470R1x, SR320 エルグ(株)
μITRON3.0 SR900 SPC900 ソニー(株)
MR30 M16C/60シリーズ 三菱電機セミコンダクタシステム(株)
Softune REALOS/FR FRファミリー 富士通(株)
REALOS/SP SPARCliteシリーズ 富士通(株)
UDEOS/r39 TLCS-R3900ファミリー 東芝情報システム(株)
UDEOS/i586 Pentium, i486 東芝情報システム(株)
MR32R M32R/D 三菱電機セミコンダクタシステム(株)
FS.ExRon-ARM ARM7TDMIシリーズ ファームウェアシステム(株)
HI7000 SH-1, SH-2シリーズ (株)日立製作所
HI7400 SH2-DSPシリーズ (株)日立製作所
HI7700 SH-3シリーズ (株)日立製作所
ITRON1 RX116 V20 エルグ(株)
RX136 V33A エルグ(株)
RX320 V25 エルグ(株)
RX423 V55PI エルグ(株)
※ 日本国外ではサポートされていない製品も含む
※ 製品名は日本国内のみに適用

言うまでもなく,このように多くの ITRON仕様カーネルが実装されるのは, 広い応用分野と極めて多くの応用事例があるためである.ITRON仕様カーネル が使用されている機器の例を表-5に挙げる.また,前に紹介したトロン協会に よるアンケート調査でも,ITRON仕様が特に民生機器の分野において広く使わ れており,事実上の業界標準仕様となっていることがわかる (図-6).ITRON仕 様カーネルを使っているケースの中で,自社製の ITRON仕様カーネルを使用し ているケースが多くあり,ITRON仕様が真にオープンな標準仕様となっている ことがわかる.

表-5: ITRON仕様カーネルの主な適用分野
AV機器, 家電
テレビ, ビデオ, デジタルカメラ, セットトップボックス, オーディオ機器, 電子レンジ, 炊飯器, エアコン, 洗濯機

個人用情報機器, 娯楽/教育機器
PDA, 電子手帳, カーナビ, ゲーム機, 電子楽器

パソコン周辺機器/OA機器
プリンタ, スキャナ, ディスクドライブ, CD-ROMドライブ, コピー, FAX, ワープロ

通信機器
留守番電話機, ISDN電話機, 携帯電話, PHS, ATMスイッチ, 放送機器/設備, 無線設備, 人工衛星

運輸機器, 工業制御/FA機器/設備機器, その他
自動車, プラント制御, 工業用ロボット, エレベータ, 自動販売機, 医療用機器, 業務用データ端末

図-6: 組み込み機器に利用されているリアルタイムOS
(トロン協会によるアンケート調査結果, 1997年末〜1998年頭, 日本)

5.最近の成果と現在の活動

先に述べたように,ITRONプロジェクトでは,これまでリアルタイムカーネ ル仕様を中心に標準化活動をおこなってきたが,組み込みシステムの大規模化 ・複雑化が進行するに伴い,ソフトウェア部品 (ないしは,ミドルウェア) や 開発環境 (ツール) との関連など,リアルタイムカーネルを取り巻く環境を意 識した標準化活動の必要性が高まっている.ITRONプロジェクトでは,現在そ の中で,ソフトウェア部品の標準化に重点を置いた取り組みをおこなっている. 具体的には,ソフトウェア部品の開発・流通を促す条件を整えることに加えて, 分野を絞り込んでのソフトウェア部品インタフェースの標準化を進めてい る.

ソフトウェア部品の開発・流通を促す条件を整えるための活動として,次 の2つの課題を中心に検討をおこなっている.最初の課題は,現在実装されて いる ITRON仕様カーネルは実装毎の仕様の違いが大きいために,ソフトウェア 部品の流通性が十分に確保できないという問題を解決することである.そのた めには,弱い標準化の利点を残しつつ,カーネル仕様の標準化レベルを上げる ことが必要になる.2つめの課題は,ハードリアルタイム性を持ったソフトウェ ア部品をサポートすることである.ソフトウェア部品の中にはリアルタイム性 を求められるものが多くあり,ソフトウェア部品のリアルタイム制約を満たし つつアプリケーションと共存させたり,複数のソフトウェア部品の併用を可能 にする枠組みが求められる.以上の課題に関する検討結果は,現在検討中の次 世代のμITRONリアルタイムカーネル仕様であるμITRON4.0仕様に反映され る.

分野を絞り込んでのソフトウェア部品インタフェースの標準化としては, TCP/IP プロトコルスタックの API (アプリケーションプログラムインタフェ ース) と Java 実行環境について取り組みを行っている.

最近組み込みシステムの分野においても,TCP/IP プロトコルスタックの重 要性が増している.現在 TCP/IP の API として広く使われているソケットイ ンタフェースは,(特に小規模の) 組み込みシステムに用いるには,オーバヘッ ドが大きい,プロトコルスタック内で動的メモリ管理が必要になるなどの問題 がある.組み込みシステムのための標準的な TCP/IP API である ITRON TCP/IP API仕様は,ソケットインタフェースの持つこれらの問題を解決し,コ ンパクトで効率の良い TCP/IP プロトコルスタックを実現することを可能にす るために設計された.ITRON TCP/IP API仕様は,1998年5月に公開され た.

Java もまた,最近注目を集めている技術の1つである.Java の技術を組み 込みシステムに適用する現実的な方法として,Java実行環境を ITRON仕様カー ネル上に実現し,アプリケーションシステムを Java に適した部分は Javaプ ログラムの形で,ITRON仕様カーネルの利点を活かせる部分は ITRON のタスク として実装する方法がある.ここで,Javaプログラムと ITRONタスクの間の通 信インタフェースの標準化が重要な課題となる.JTRON2.0仕様は,この標準イ ンタフェースを定めることを目的に設計されたもので,1998年10月に公開され た.

ソフトウェア部品関連以外では,応用分野を絞り込んでの調査研究・標準 化活動として,自動車制御分野におけるITRON仕様カーネルに対する要求事項 を整理し,標準仕様に対する提案をまとめる活動を行った.そこでの検討結果 は,μITRON4.0仕様に反映される予定である.

この他にも,現在,リアルタイムカーネルを用いた組み込みシステム設計 の標準的な手法を提示するとともに,ハードリアルタイム性を持ったソフトウェ ア部品をサポートするためのアプリケーション設計ガイドラインの作成や,デ バイスドライバ設計ガイドラインの作成などの活動を進めている.その他にも, ITRON仕様カーネルとデバッグ環境とのインタフェースの標準化や, ITRON仕 様カーネルの C++言語バインディングの標準化など取り組むべき課題が数多く あり,順次標準化活動を開始したいと考えている.

これらの活動においては,従来の ITRON専門委員会メンバに限定せずにそ れぞれの分野の専門家の参加を募り,有効性の高い標準仕様の策定を目指して いる.

6.普及・広報活動

ITRON仕様が業界標準と呼べるものとなっている一方で,ITRONプロジェク トの活動は十分には知られておらず,従来以上に広報活動に力を入れている. また,ITRON仕様を海外においても普及させるべく,対外的な普及・広報活動 にも力を入れている.

具体的には,ITRONプロジェクトの活動を広報する場として,ITRONホーム ページをインターネット上に用意するとともに,ITRONニュースレターを隔月 で発行している (いずれも日本語・英語の両バージョンあり).また,プロジェ クトの最新状況を報告する場として,1年に1回 ITRONオープンセミナーを開催 している.その他,組み込みシステムに関連する展示会やセミナー等において, ITRONプロジェクトに関する普及・広報活動を積極的におこなっている.

海外に対する普及・広報活動としては,1年に1回米国において ITRON International Meeting を開催している.また,組み込みシステム分野で世界 最大の展示会である Embedded Systems Conference においてブースを出すな どの形で普及・広報活動をおこなっている他,アジア地域において ITRON仕様 に関するセミナーを開催するなどの活動を進めている.

7.おわりに

ITRON仕様カーネルは,日本の主要な半導体メーカを含む多くのメーカが, 規模の異なる様々なプロセッサ用に実装をおこない,その多くが製品化され, また広く応用されている.特にμITRON仕様カーネルは,今までメモリ容量や 実行速度の制約によってリアルタイムOS が使用できなかったシングルチップ の MCU への適用が進んでおり,μITRON仕様がこの分野における世界初の標準 カーネル仕様の地位を築きつつあるということができる.

我々は,このような実績をベースとして,標準化の対象をカーネル仕様か らソフトウェア部品や開発環境などの周辺仕様へと広げると同時に,応用分野 毎の調査研究・標準化活動を進めている.将来的な方向性としては,TRONプロ ジェクトのゴールである HFDS (超機能分散システム) の実現へ向けて,次の 世代の ITRON仕様である IMTRON の検討へと進めていく計画である.



(社)トロン協会 ITRON専門委員会
〒108-0073 東京都港区三田1丁目3番39号 勝田ビル5階
TEL: (03) 3454-3191 FAX: (03) 3454-3224

-
Back to ITRON Home Page (in Japanese)