2006-2007 計装豆知識
- 機能安全とIEC規格61508について(1)/2007.12
- タッチパネル/2007.11
- パネル計器の裏側の感電保護/2007.10
- BACnet(2)/2007.9
- BACnet(1)/2007.8
- 避雷器の寿命/2007.7
- バルブポジショナのパワーアップ/2007.6
- バルブアクチュエータのフェールセーフ/2007.5
- IECExスキーム/2007.4
- CBスキーム/2007.3
- リアルタイムOS/2007.2
- 2線式変換器について(その2)/2007.1
- 2線式変換器について(その1)/2006.12
- 温度センサ:サーミスタ/2006.11
- DNS(Domain Name System)/2006.10
- 落雷と誘導雷/2006.9
- パルス列信号の注意点/2006.8
- バルブアクチュエータ 空気式と電動式の比較/2006.7
- 電力の基礎(2)/2006.6
- 電力の基礎(1)/2006.5
- 直列接続形電源用避雷器の特長/2006.4
- 電気回路/2006.3
- 熱電対用補償導線と現場設置形2線式変換器/2006.2
- 避雷関連のJIS規格について/2006.1
エムエスツデー 2007年2月号
リアルタイムOS
産業用機器、家電機器、AV機器などを含めて、ソフトウェアを組み込んだ機器はますます増大し、高機能化しています。
組み込み機器とリアルタイムOS(Real-time Operating System)とには密接な関係があります。
組み込み機器のプログラムメモリサイズが、64KB(キロバイト)未満では約20%、64~256KBでは50%、1MB以上ではほぼ100%にOS(Operating System)が組み込まれていて、そのほとんどがリアルタイムOSを採用しています。
ソフトウェアをうまく機能させるためには、必要なコンピュータ資源(CPU割り当て時間、メモリ、外部I/O機器)の割り当てを有効に管理する必要があります。ソフトウェアの規模が大きく、複雑になれば、必要な資源を管理することが困難になります。資源の管理を容易にしてくれるのがOSの役割です。
では、なぜ組み込み機器ではリアルタイムOSが必要になってくるのでしょうか。
組み込み機器の多くは、特定のイベントに対して、一定時間内に定められた処理を行うことが必要です。これら時間的要求の管理を容易にしてくれるOSがリアルタイムOSです。したがって、リアルタイムOSは実時間処理OSとも呼ばれています。
リアルタイムというと応答速度が速いことと誤解される場合が多いですが、そうではなくシステムが要求する時間的制約を満足できるかどうかで、リアルタイム性があるか否かが決まります。
通常は十分に速い応答速度だが時々遅くなるとか、周期的に動作するタスクの周期性のばらつきが大きすぎるとか、そのシステムが要求する時間的制約条件を満たさない場合は、リアルタイム性がないということになります。
この時間的制約条件を満足させるためには、システムの各処理(タスク)に優先度を付けて、優先度の高い順から効率よく切り替えて、各タスクの時間制約を守ろうとする機能が必要になります。そのために、リアルタイムOSでは、WindowsやUnixなどのOSとは異なり、事象駆動(イベントドリブン)型の優先度ベーススケジューリングを行うのが一般的です。
図1に割り込みとタスクの実行状態の例を示します。時間的制約の大きいイベントについて割り込み処理の優先度を高くし、たとえ定周期処理タスクを処理中であっても、優先度が高いタスクを先に処理します。
代表的なリアルタイムOSとしては、ITRON(アイトロン)、μITRON(マイクロアイトロン)、VxWorks、WindowsCE、OS-9、RTLinux、QNX、T-Kernelなど多数があります。システムの規模や要求機能に従って使い分けられています。
ITRONは、1984年に東京大学の坂村健博士によって提唱されたTRON(The Real-time Operating System Nucleus)プロジェクトの一環で実現された、組み込み型制御用リアルタイムOSの仕様です。
μITRONは、ITRONの仕様をさらに限定して、非常にコンパクトな設計にした仕様です。
国内の組み込み機器の約50%強がITRON仕様のリアルタイムOSを組み込んでいます。組み込み機器分野の拡大、システムの大規模化に伴い、リアルタイムOSも進化し続けています。
図2に、エム・システム技研製品であるWindowsCEを用いたチャートレス記録計(形式:73VR2100)を示します。操作性に優れた高速サンプリング機能を実現しています。