Previous: 2. FreeRTOS |
Up: 2. FreeRTOS |
Next: 2.2. FreeRTOSの導入方法 |
本書ではSTM32に対応しているOSの中でも、FreeRTOSを使用します。FreeRTOSは英国のReal Time Engineersが提供しているRTOSです。
http://www.freertos.org |
FreeRTOSはGPLで提供されているため、誰でも無償で使用できます。GPLとはいっても、ライセンス条項に注釈が付されており、RTOS上で稼働させるアプリケーションにはGPLが及ばないことが明言されています。つまりアプリケーションのソースコードにGPLを適用してソースコードを公開する必要が無いことから、商用製品にも適用が可能です。
FreeRTOSは対応可能なマイコンの種類が多く、あるマイコンで使用方法を習得すれば、他のマイコンを使用したときでも、同様の手順でOSを使用することができます。
FreeRTOSはRTOSとしての基本機能に絞って構成されていることからコードサイズが小さく、ROMの容量を圧迫しにくい設計になっています。また必要に応じて使用しない機能を削減してコードサイズをさらに減少させることも可能です。
小さいOSとはいっても、RTOSに要求される、優先順位の管理や、ラウンドロビン処理(優先順位が同じタスクを一定時間で切り替えながら実行する処理)、タスク間での通信のために使用するキュー、セマフォ(各後述)にも対応しています。
本書では紹介しませんが、コルーチン型のマルチタスクにも対応しています。コルーチン型というのは、各タスクのための関数を協調して動作させることにより、マルチタスクを実現しようというものです。実際のメリットとしてはは、RAMの消費量を抑えることができることでしょう。
マイコン向けのRTOSはドキュメントが限られている場合もあるのですが、FreeRTOSは、公式サイト上でOSの使用方法や内部構造について詳しく解説がなされています。そしてPDF版ではありますが、FreeRTOSの解説書(“USING THE FREERTOS REAL TIME KERNEL”)も発行されています。この解説書はとてもわかりやすいので、是非一読されることをお勧めします。
Previous: 2. FreeRTOS |
Up: 2. FreeRTOS |
Next: 2.2. FreeRTOSの導入方法 |