おわりに
リアルタイムOSで使われる専門用語とリアルタイムOSの応用のイメージを説明してきました。 しかし、リアルタイムOSを使いこなすにはまだ多くのことを学ばなければなりません。この入門編の最後に学ぶべき事項を整理しておきます。 「リアルタイムOSシステムプログラマ育成には体系的な専門教育」が必要です。
リアルタイムOSを使いこなすには・・・
- マイコン
- 組込みプログラミング
- 制御対象となる周辺ハードウェアの制御方法
の知識が必要です。これらの基礎力の上にリアルタイムOS固有の知識、注意点、 ノウハウをマスタしていく必要があります。
1. リアルタイムOS固有の知識
- リアルタイムOSの機能と応用方法
- リアルタイムOSのプログラミング法
- リアルタイムOSアプリケーションの設計/デバッグ/テスト方法
- リアルタイムOSアプリケーション用のドキュメントの書き方
2. 注意点
複数のタスクがお互いを待ち合わせて動作できなくなるデッドロック現象、あるタスクが動作できなくなるロックアウト現象、設定した優先度と逆の優先処理になってしまうプライオリティ・インバージョン現象などが起こらないように設計しなければなりません。
また、資源を占有したままタスクが終了して資源が使えなくならないようにすることも注意が必要です。複数のタスクから呼び出される共有ルーチンは再入可能(途中まで実行中に別なタスクから先頭から呼び出されても正しく実行できる。リエントラントともいう)なような作り方にしておかなければなりません。
3. ノウハウ
タスク間の同期や通信、資源の待ち合わせの場面でOSが提供するいくつかの機能が利用できますが、どのような場面に、何を、どう使うかといったノウハウを身につけることが必要です。
本編が組込みリアルタイムOS技術者をめざす多くの方たちの「はじめの一歩」になることを願います。