ゼファープロジェクトロゴ | |
| 開発者 | Linux Foundation、 ウインドリバーシステムズ |
|---|---|
| 書かれた | C |
| OSファミリー | リアルタイムオペレーティングシステム |
| 作業状態 | 現在 |
| ソースモデル | オープンソース |
| 初回リリース | 2016年7月26日[1] |
| 最新リリース | 4.0.0 / 2024年11月15日[2] [3] |
| リポジトリ |
|
| マーケティングターゲット | モノのインターネット、組み込みシステム |
| 利用可能 | 英語 |
| プラットフォーム | ARM ( Cortex-M、Cortex-R、Cortex-A )、ARC、MIPS、Nios II、RISC-V、Xtensa、SPARC、x86、x86-64 |
| カーネルタイプ | マイクロカーネル(v1.6以前)[4] [5] [6] モノリシック(v1.6以降)[5] [6] |
| ライセンス | アパッチ2.0 |
| 先行 | ウインドリバーロケット |
| 公式サイト | ゼファープロジェクト |
Zephyr(/ ˈ z ɛ f ə r / )は、複数のアーキテクチャをサポートし、 Apache License 2.0の下でリリースされた、接続されたリソース制約のある組み込みデバイス(マイクロコントローラに重点を置く)向けの小型リアルタイムオペレーティングシステム(RTOS)[7]です。Zephyrには、カーネル、および完全なアプリケーションソフトウェアの開発に必要なすべてのコンポーネントとライブラリ、デバイスドライバー、プロトコルスタック、ファイルシステム、ファームウェアアップデートが含まれています。[8]
古代ギリシャの西風の神ゼピュロスにちなんで名付けられました。 [9]
歴史
Zephyrは、デジタル信号プロセッサ(DSP)用のVirtuoso RTOSから生まれました。 [10] [11] 2001年、Wind River SystemsはVirtuosoの開発元であるベルギーのソフトウェア会社Eonic Systemsを買収しました。2015年11月、Wind River Systemsはオペレーティングシステムの名前をRocketに変更し、オープンソースでロイヤリティフリーにしました。[11] Wind Riverの他のRTOSであるVxWorksと比較して、Rocketはメモリ要件がはるかに小さく、特にセンサーや単機能の組み込みデバイスに適しています。Rocketはわずか4KBのメモリに収まりましたが、VxWorksは200KB以上を必要としました。[11]
2016年2月、RocketはZephyrという名前でLinux Foundationのホスト型共同プロジェクトとなった。[10] [12] [1] Wind River SystemsはRocketカーネルをZephyrに提供したが、Rocketを顧客に提供し続け、クラウドサービスに対して料金を請求した。[13] [11]その結果、Rocketは「本質的にZephyrの商用版」となった。[13]
それ以来、Zephyrの初期のメンバーと支持者には、Intel、NXP Semiconductors、Synopsys、Linaro、[14] Texas Instruments、DeviceTone、Nordic Semiconductor、Oticon、Boseなどが含まれています。[15]
2022年1月時点で、Zephyrは他のRTOS( Mbed、RT-Thread、NuttX、RIOTなど)[アップデート]と比較して、貢献者数とコミット数が最も多い。 [16]
特徴
Zephyrは、リソースが制限された組み込みまたはマイクロコントローラベースのアプリケーションを開発するために必要なすべてのコンポーネントを提供する予定です。これには以下が含まれますが、これらに限定されません。[8]
- 小さなカーネル
- 必要なリソースとモジュールをコンパイル時に定義するための柔軟な構成およびビルド システム
- プロトコル スタックのセット ( IPv4およびIPv6、制約付きアプリケーション プロトコル(CoAP)、LwM2M、MQTT、802.15.4、Thread、Bluetooth Low Energy、CAN )
- 不揮発性ストレージ用の複数のフラッシュファイルシステム(FatFs、LittleFS、NVS)を備えた仮想ファイルシステムインターフェース
- 管理とデバイスファームウェア更新のメカニズム
構成とビルドシステム
ZephyrはLinuxカーネルから継承されたKconfigとdevicetreeを設定システムとして使用しますが、非Unixオペレーティングシステムへの移植性のためにプログラミング言語Pythonで実装されています。 [17] RTOSビルドシステムはCMakeに基づいており、これによりZephyrアプリケーションをLinux、macOS、Microsoft Windows上でビルドできます。[18]
ユーティリティツール「West」
Zephyr には、リポジトリの管理、ハードウェアへのプログラムのダウンロードなどを行うための「west」と呼ばれる汎用ツールがあります。
カーネル
初期のZephyrカーネルはデュアルナノカーネルとマイクロカーネルの設計を採用していました。[4] [5] [6] 2016年12月のZephyr 1.6では、これがモノリシックカーネルに変更されました。[5] [6]
カーネルは他の小規模OSとは異なるいくつかの機能を提供する: [8]
- 単一アドレス空間
- 複数のスケジューリングアルゴリズム
- コンパイル時にリソースが定義され、柔軟性を高めるために高度に構成可能でモジュール化されています。
- メモリ保護ユニット(MPU)ベースの保護
- 非対称マルチプロセッシング(AMP、OpenAMP ベース)と対称マルチプロセッシング(SMP)のサポート
安全
セキュリティの維持と向上に専念するグループがあります。[19]また、コミュニティによって所有されサポートされているということは、世界中のオープンソース開発者がコードを審査していることを意味し、セキュリティが大幅に向上します。[12]
参照
参考文献
- ^ ab 「Linux Foundation が IoT デバイス向けリアルタイム オペレーティング システム構築プロジェクトを発表」。Zephyrプロジェクト。Linux Foundation。2016 年 2 月 17 日。2016 年 3 月 10 日時点のオリジナルよりアーカイブ。
- ^ 「Zephyr v4.0.0」。GitHub。
- ^ 「Zephyr 4.0 が一般公開されました: いくつかのハイライト」。Zephyr ブログ。
- ^ ab Wasserman, Shawn (2016 年 2 月 22 日)。「Linux の IoT Zephyr オペレーティング システムの仕組み」。Engineering.com。
- ^ abcd Helm, Maureen (2016 年 12 月 15 日). 「Zephyr OS v1.6.0 の発表」. Zephyr プロジェクト。
- ^ abcd Wong, William G. (2017 年 7 月 6 日). 「Zephyr: ウェアラブル オペレーティング システム」. Electronic Design .
- ^ 「Linux の弟分、Zephyr は小さなオープンソース IoT RTOS です」LinuxGizmos.com 2016 年 2 月 17 日2018 年 2 月 23 日閲覧。
- ^ abc 「Zephyr プロジェクト ドキュメント: はじめに」。
- ^ 「West (Zephyr のメタツール) — Zephyr プロジェクト ドキュメント」。docs.zephyrproject.org。
- ^ ab Clarysse, Ivo (2019年11月22日). 「Zephyr – IoT向けオペレーティングシステム」. Zephyrプロジェクト。
- ^ abcd Turley, Jim (2015 年 11 月 25 日)。「Wind River が Rocket RTOS を自由な軌道に乗せる」。Electronic Engineering Journal。Techfocus Media。2018年 2 月 23 日閲覧。
- ^ ab Guerrini, Federico (2016-02-19). 「Linux Foundation の Zephyr プロジェクトによりモノのインターネットがオープンソース化」Forbes . 2017-01-12閲覧。
- ^ ab Patel, Niheer (2016年2月17日). 「Wind River、Linux FoundationのZephyrプロジェクトを歓迎」Wind River Systems。2016年2月21日時点のオリジナルよりアーカイブ。 2016年2月18日閲覧。
- ^ Osborne, Charlie (2016-02-19). 「Linux Foundation の Zephyr プロジェクト: IoT デバイス向けのカスタム オペレーティング システム」. ZDNet . CBS Interactive . 2017-01-12閲覧。
- ^ 「Zephyr プロジェクト – 開発者による、開発者のための、実証済みの RTOS エコシステム」。
- ^ 「Zephyr GitHub ページ」。GitHub。2022年1月26日。
- ^ 「scripts/ フォルダ」。GitHub。2020年5月12日。
- ^ 「アプリケーション開発: Zephyr プロジェクト ドキュメント」。Zephyrプロジェクト。
- ^ Wallen, Jack (2016-02-18). 「Linux Foundation がオープンソース IoT オペレーティング システム Zephyr プロジェクトを発表」TechRepublic . CBS Interactive . 2017-01-12閲覧。
