μITRON
μITRON(マイクロ アイトロン)とは マイコン用マルチタスクのリアルタムOSです。
μITRONとは東京大学の坂村健教授が始めたTRONプロジェクトのサブプロジェクトであるITRONにおいて作成された、組み込みシステム向けリアルタイムオペレーティングシステムの仕様。
μITRON仕様に準拠したOSは、テレビ、ビデオなどのAV機器や家電製品、プリンタなどのパソコン周辺機器、コピー機などのOA機器や自動車などに搭載されたコンピュータ(組み込みシステム)上で動作し、それらの制御を行うために必要な機能を提供する。
組み込みシステム向けOSの仕様としてはITRONがあったが、μITRONはITRONに比べて小型で小規模な8~16ビットのMCU(microcontoller unit)に適用するための機能を含んだ仕様として作成された。その後μITRONの適用範囲が広がり、32ビットの大規模MCUにおいてもμITRON仕様のOSが実装されるようになった。このため現在はμITRON仕様がITRON仕様を吸収する形で開発が進んでいる。
μITRON仕様は、限られた計算能力とメモリ容量でも十分な性能を発揮したため、組み込みシステム向けのMCUのうちほとんどのものに対してμITRON仕様のOSが開発され、事実上の業界標準としての地位を確立している。
( IT用語辞典より)
フリーで利用できるマイコン用のリアルタイムOS。携帯電話等の機器にも広く実用にされている有名なOSです。
広く使われていて、一般的なRTOSなので、教育、学習にもよい。
ゆるい標準化ということで、V4からより標準されている
多くの種類のマイコン、H8 等にも合うように有志の方々が移植されていて、H8tinyでも使える。
メモリの配置チェックを厳密にしないようなので、割り付けに気をつけないと、メモリ配置が大きくなって重なった場合容易に暴走するようです。
μITRONはH8用がありますが、H8用には発売元ルネサスから、μITRONと同様のSmalightというRTOSが販売されています。
RTOSを使う μITRON
μITRONを使う
μITRON4.0仕様
RTOS(リアルタイムOS)であるμITRON(マイクロ アイトロン)をH8 3664少しずつ使っています。
リアルタイムOSとは処理をリアルタイムに実行することを目的としていて、決められた時間内に処理を終えるような処理性能を背負ったOS、つまり処理時間の正確性。
またRTOSの1つであるμITRON(マイクロ アイトロン)は、国産のオープンソースなRTOSで、現在RTOS使用のものの半数以上を占めているといわれる主要な有名OSです。
これまではそのままOSなしでマイコンのプログラムを作っていたわけですが、最近はマイコンを使用した携帯電話機器のように巨大な大きさのソフトも普通に使われ、マイコンでOSも普通に使われています。
携帯電話のような小型機器でさえ昔のパソコン以上の容量や性能を持つようになっているので、これからどんどんOSの使用ははこれからも拡大していくでしょう。だから使えるに超したことはない。。
●OSを使うと・・
OSを使うと、OSがプログラムの根本に居座りOSの指揮の上に動くソフトを作ることになりますが、OSなしで使う場合に作ったのとくらべ、またちょっと違ったソフトを作るようでRTOSの知識も必要ですが、それはそれで便利だったり、楽しい。
大きなソフトで、処理もあちこちの外部機器とやりとりが多いのなら必要だと思いますが、 処理も小さく、小型、リソースも少ないマイコンだと、たいしたことのないような目的にRTOS使うとその大きさと処理から返って負担になるのは現状では間違いないでしょう。
それにμITRONを使うとOSの複雑な処理が加わるため、これまで(RTOSなし)と同じことを作る処理でも余計難しくなるといっていいと思います。
OS使うとOS使わない場合に比べ、余計な処理や、リソースなどを喰われますが、
マイコンの性能もメモリなども上がり、環境も良くなっていく中でこれからどんどんマイコンでもOS使用がどんどん一般的になっていきそうです。
このHPでもH8で 国産RTOSで、広く使われている、またフリーのオープンソースな μITRON(マイクロ アイトロン) を使って また楽しく実験していく予定です。
●RTOSを使う利点は
ここでRTOSを使う利点ですが、難しいです。
長短所はいろいろありますが、小さなマイコンで、そして趣味で使うには、利点はあるのだろうか。。。
3664で使うことを考えると、実用では短所の方が先に思い立ちます。
PCのように大きなものになるとOSなかったら大変で、普通はOSがあると楽になりそうなものですが、
3664のような小さいものだと返ってややこしくなるような感想が否めません。。使わない利点もあると思います。
OS使ってできることは、OS使わなくてもできます。わざわざ使う必要はあるか? というのは難しい問題で目的や開発内容によるところが大きいでしょう。
マルチタスク処理ならOSに頼れて作りやすいかというと、OSを詳しく知る必要があるので小規模なものならどうだろう??という感想です。
ここでμITRONを3664に使うのは、お試しと学習の目的です。
でも、マルチタスクの処理は楽しい。。目的よりも、使ってみる、使って楽しんでRTOSになれることこを目指して。
●RTOSがあれば、マイコンの知識は?
やはりOSなしの これまでの実験内容のような知識は必要だと思います。。
OS使って処理が整理され、簡素化できるところはありますが、やっぱりマイコンの知識は必要だと思います。
μITRONのようなマルチタスクOSを使うと並列処理が可能なので、RTOSのμITRONなどを使ってマイコンに入門というのはかえって難しいように感じます。RTOSを使うにしても下地は同様なので一度マイコンをOS無しで使って慣れておいた方がよいでしょう。
メモリ管理やタスクの切り替え動作などマルチタスクOSは複雑なところが増えるので、μITRONのようなマルチタスクRTOSでマイコンに入門というのは適さないように思います。
OSから入ると、OS自体の内容を勉強するところも増えるので、以前の実験の項目に積み上げる内容にしました。
- twtter
- google+
- hatena