Zephyr (操作系統)
Zephyr是一個小型的實時操作系統[3],用於資源受限的嵌入式互聯設備(主要是微控制器),支持多種架構,使用Apache許可證 2.0發行。它有一個BSD許可證的仿品出現在來自Intel的Arduino 101軟件資源包中[4]。
開發者 | Linux基金會, 風河系統 |
---|---|
編程語言 | C和匯編語言 |
作業系統家族 | 實時操作系統 |
運作狀態 | Current |
源碼模式 | 開放源代碼 |
首次發布 | 2016年2月17日[1] |
當前版本 |
|
市場取向 | 物聯網 |
支持的語言 | 英語 |
支援平台 | ARM(Cortex-M0,Cortex-M3, Cortex-M4),x86,ARC,RISC-V,Nios II,Xtensa |
內核類別 | 單體內核 |
許可證 | Apache 2.0 |
前一代 | Wind River Rocket |
官方網站 | www |
倉庫 |
歷史
編輯Zephyr最初是風河系統公司在2015年11月推出的為物聯網(IoT)設備開發的「Rocket內核」[5][6][7],更早時稱為「Microkernel Profile for VxWorks」,代碼移植於2001年併購Eonic Systems得來的Virtuoso DSP RTOS[8]。在2016年2月,它成為Linux基金會的項目而改稱現名[9][1]。
簡介
編輯Zephyr內核是小型的並設計用於資源受限的系統,預期目標是用於從簡單的嵌入式環境傳感器和LED可穿戴技術,到複雜的智能手錶和IoT無線網關。Zephyr的建造系統支持Zephyr SDK之外的第三方工具鏈[10]。Zephyr計劃設立了專門機制來維護或改進安全性[11]。
Zephyr計劃的成員和支持者包括:Intel、Linaro、NXP半導體、Nordic半導體 ,和Synopsys、 runtime.io 、DeviceTone、Oticon等。[12]
特徵
編輯Zephyr內核提供了如下一些特徵:內存保護,內核服務,高可配置性,編譯時確定資源。[13]
內存保護
編輯實現可配置的特定於架構的棧溢出保護,內核對象及設備驅動程序許可權追蹤,和線程隔離,採用了在x86、ARC和ARM架構上的線程級別內存保護、用戶空間和內存域。
對於沒有MMU/MPU的平台和內存受限的設備,支持把特定應用的代碼和一個定製內核組合起來建立一個單體映像,它被裝載並執行於系統硬件之上。應用代碼和內核代碼二者都執行在一個共享的單地址空間中。
內核服務
編輯內核為應用開發提供了一些熟悉的服務,包括:
- 多線程服務,兼具基於優先級的、非搶先式的協同線程和基於優先級的、搶先式線程,帶有可選的輪流式時間片。包括POSIX pthread兼容API支持。
- 中斷服務,兼具編譯時和運行時的中斷處理器註冊。
- 線程間同步服務,具有二值信號量、計數信號量、互斥信號量。
- 線程間數據傳遞服務,具有基本消息隊列、增強消息隊列和字節流。
- 內存分配服務,具有固定大小或可變大小內存塊的動態分配和釋放。
- 電能管理服務,具有比如無時標空閒和高級的空閒下部構造。
高可配置性
編輯允許應用只合併入它需要的功能,並指定它們的數量和大小。
編譯時確定資源
編輯要求所有系統資源都在編譯時確定,這縮減代碼大小並增進性能。
參見
編輯引用
編輯- ^ 1.0 1.1 Zephyr Project: The Linux Foundation Announces Project to Build Real-Time Operating System for Internet of Things Devices (頁面存檔備份,存於網際網路檔案館), Linux Foundation, 17 February 2016
- ^ Zephyr 4.0.0. 2024年11月15日 [2024年11月20日].
- ^ Meet Linux's little brother: Zephyr, a tiny open-source IoT RTOS. LinuxGizmos.com. 2016-02-17 [2018-02-23]. (原始內容存檔於2022-02-04) (美國英語).
- ^ Zephyr Kernel v1.0.0 Release Notes. [2018-03-30]. (原始內容存檔於2016-03-07).
- ^ MCU Commercial Free RTOS for small embedded edge devices | Rocket. windriver.com. [2018-02-23]. (原始內容存檔於2016-07-16) (英語).
- ^ Wind River Sets Rocket RTOS On Free Trajectory – EEJournal. www.eejournal.com. [2018-02-23]. (原始內容存檔於2016-10-28) (美國英語).
- ^ Niheer Patel: Wind River Welcomes Linux Foundation’s Zephyr Project (頁面存檔備份,存於網際網路檔案館), Wind River Systems, 17 February 2016
- ^ What is Zephyr. [2018-12-02]. (原始內容存檔於2018-12-02).
- ^ Guerrini, Federico. The Internet of Things Goes Open Source with Linux Foundation's Zephyr Project. Forbes. 2016-02-19 [2017-01-12]. (原始內容存檔於2022-02-24).
- ^ Getting Started Guide » 3rd Party Toolchains. [2018-11-30]. (原始內容存檔於2021-09-29).
- ^ Zephyr Project Security » Zephyr Security Overview. [2018-12-01]. (原始內容存檔於2022-03-29).
- ^ "Zephyr Project Members". [2018-03-30]. (原始內容存檔於2022-04-01).
- ^ Introducing Zephyr » Distinguishing Features. [2018-12-01]. (原始內容存檔於2020-10-22).