FreeRTOS

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Jump to navigation Jump to search
FreeRTOS
開発者 Richard Barry、FreeRTOSチーム
OSの系統 リアルタイムオペレーティングシステム
開発状況 開発中
ソースモデル フリーソフトウェア/オープンソース
最新安定版リリース 10.0.1 / 2017年12月20日(5か月前) (2017-12-20
対象市場 組み込みシステム
使用できる言語 英語
使用できる
プログラミング言語
C言語
対応プラットフォーム ARM (ARM7、ARM9、Cortex-M3、Cortex-M0))、Atmel AVRAVR32HCS12MicroBlazeTI MSP430PICルネサスH8/Sx868052ColdfireKinetisV850、78K0R、富士通FRファミリ(MB91460シリーズ)、F2MC-16FXファミリ(MB96340シリーズ)、Nios II
カーネル種別 マイクロカーネル
ライセンス MIT License
ウェブサイト https://www.freertos.org/
テンプレートを表示

FreeRTOS組み込みシステム用のオープンソースリアルタイムオペレーティングシステム (RTOS) 。いくつものマイクロコントローラに移植されている。

ライセンス[編集]

バージョン9までは例外条項付きGPLの下で配布されていた。 例外条項は、カーネルそのものがオープンソースである場合にはユーザのコードをクローズドソースにしておくことができるという内容である。[1]

Amazon.comに買収された後のバージョン10からはMITライセンスを採用している。

サポートされているアーキテクチャ[編集]

サポートされているアーキテクチャは以下のようである[2]

概要[編集]

FreeRTOSは小さく単純であるように設計されている。 カーネル自体は3つあるいは4つのC言語によるファイルのみからなっている。 コードを読みやすく、移植しやすく、メンテナンスしやすくするために、ほとんどC言語で書かれている。 しかし、アーキテクチャ独自のスケジューラルーチンを中心に、必要な部分には少ないがアセンブリ言語が使われている ダウンロードできる配布物では、既に設定がなされており、 全ての移植先に対してのデモンストレーションとコンパイラが含まれている。 これにより、すばやくアプリケーションをデザインできる。 FreeRTOS.orgウェブサイトはRTOSについてのチュートリアルや、 設計の詳細と様々なマイクロコントローラでのパフォーマンスの比較結果を掲載している。

主要な機能は以下のようである。

  • 小さく単純であること。オペレーティングシステムに慣れていない者にも適している。
  • スケジューラはプリエンプティブマルチタスクと協調的マルチタスクの両方に設定できる。
  • コルーチンサポート (FreeRTOSにおけるコルーチンとは、非常に単純で軽量なタスクであり、スタックの使用は非常に制限されている)

SafeRTOS[編集]

FreeRTOSはSafeRTOSと呼ばれるスピンオフしたプロジェクトを産んでいる。 SafeRTOSはFreeRTOSのコードをベースとしているが、 IEC 61508に定める安全性に関連するアプリケーションで使用できるように アップデートやドキュメントの作成、テスト、検査されている。

OpenRTOS[編集]

もう一つの関連するプロジェクトはOpenRTOSである。これはFreeRTOSのコードベースを元にしているが、 ライセンスが異なっている。 OpenRTOSは全てのGPLへの言及とGPLによる実装を削除したものである。 例えば、商用製品でFreeRTOSを使う場合には、製造者はFreeRTOSを使用していることを意識し、 ソースコードを要求に応じて提供しなくてはならない。 OpenRTOSを使う場合にはこれらは該当しない。

脚注[編集]

  1. ^ FreeRTOS open source licensing, FreeRTOS license description, FreeRTOS license terms and OpenRTOS commercial licensing options.”. 2015年10月11日時点のオリジナルよりアーカイブ。2018年2月3日閲覧。
  2. ^ FreeRTOS Ports

関連項目[編集]

外部リンク[編集]