FreeRTOS

FreeRTOS は組み込みシステム用のオープンソースのリアルタイムオペレーティングシステム (RTOS) 。いくつものマイクロコントローラに移植されている。
ライセンス.
バージョン9までは例外条項付きGPLの下で配布されていた。
例外条項は、カーネルそのものがオープンソースである場合にはユーザのコードをクローズドソースにしておくことができるという内容である。
Amazon.comに買収された後のバージョン10からはMITライセンスを採用している。
サポートされているアーキテクチャ.
サポートされているアーキテクチャは以下のようである。
概要.
FreeRTOSは小さく単純であるように設計されている。
カーネル自体は3つあるいは4つのC言語によるファイルのみからなっている。
コードを読みやすく、移植しやすく、メンテナンスしやすくするために、ほとんどC言語で書かれている。
しかし、アーキテクチャ独自のスケジューラルーチンを中心に、必要な部分には少ないがアセンブリ言語が使われている。
ダウンロードできる配布物では、既に設定がなされており、
全ての移植先に対してのデモンストレーションとコンパイラが含まれている。
これにより、すばやくアプリケーションをデザインできる。
FreeRTOS.orgウェブサイトはRTOSについてのチュートリアルや、
設計の詳細と様々なマイクロコントローラでのパフォーマンスの比較結果を掲載している。
以下が主要な機能である。
SafeRTOS.
FreeRTOSから派生したSafeRTOSと呼ばれるスピンオフしたプロジェクトがある。
SafeRTOSはFreeRTOSのコードをベースとしているが、
IEC 61508に定める安全性に関連するアプリケーションで使用できるように
アップデートやドキュメントの作成、テスト、検査されている。
OpenRTOS.
関連するもう一つのプロジェクトはOpenRTOSである。これはFreeRTOSのコードベースを基にしているが、
ライセンスが異なっている。
OpenRTOSはFreeRTOSからGPLへの言及とGPLによる実装をすべて取り除いたものである。
たとえば、商用製品にFreeRTOSを組み込んだ場合には、製造者はFreeRTOSを使用していることを意識し、
利用者が要求すればGPLの規定によりソースコードを開示提供しなければならないが、OpenRTOSを採用している場合にはそのような制約がない。