必威电竞|足球世界杯竞猜平台

Zephyr
來源:互聯網

Zephyr?項目是一個采用apache 2.0協議許可,Linux基金會托管的協作項目。為所有資源受限設備,構建了針對低功耗、小型內存微處理器設備而進行優化的物聯網嵌入式小型、可擴展的實時操作系統(RTOS),支持多種硬件架構及多種開發板,可以在小至8 kB內存的系統上運行。

采用深入的安全開發生命周期:安全驗證,模糊和滲透測試,頻繁的代碼審查,靜態代碼分析,威脅建模和審查,以防止代碼中的后門。

支持Bluetooth, Bluetooth Low 能量, Wi-Fi, 802.15.4,6Lowpan, CoAP, IPv4, IPv6, 和 NFC 等標準,通過社區驅動的發展來改進和增強功能。

系統簡介

Zephyr項目是一個Linux基金會托管的協作項目,這是一個開源合作項目,聯合了業內領先企業,為所有資源受限設備構建了針對資源受限設備進行優化的最佳小型可擴展實時操作系統(RTOS)。

Zephyr內核源自Wind River VxWorks的商用VxWorks Microkernel Profile。Microkernel Profile已經從稱為Virtuoso的DSP RTOS技術發展了20多年。RTOS已被用于多種商業應用,包括衛星,軍事指揮和控制通信,雷達,電信和圖像處理。該技術成功的最新例子就是裝載了WindRiver公司VxWorks實時操作系統的Rosetta comet probe(羅塞塔號彗星探測器)于2014年11月12日在67P/Churyumov-Gerasimenko(丘留莫夫-格拉西緬科彗星)成功著陸。

系統目標

Zephyr RTOS的目標是成為針對連接的資源受限設備的最佳開源RTOS,并且考慮到安全性。

系統支持者

支持者

Zephyr 項目的初創成員有:英特爾(包括收購的阿爾特拉 Corporation 和 Wind River)、恩智浦半導體公司(包括最近并購的 飛思卡爾)和Synopsys公司。

2016年,Linaro加入Zephyr項目,與Intel,NXPSemiconductors和Synopsys初創成員都為白金會員。

2017年2月,Runtime.io和Nordic半導體公司加入Zephyr項目,成為其白銀會員。oticon也為白銀會員。

支持者對于項目的發言

英特爾相信,Zephyr 項目將會在互聯、嵌入式設備市場產生重大影響。通過提供可擴展、可定制、安全且開源的操作系統,Zephyr 項目將滿足互聯設備開發不斷演變的需求。我們計劃與 Zephyr 社區合作開發安全高效的操作系統以推動創新?!?/p>

——Mark Skarpness,英特爾開源技術中心嵌入式操作系統工程副總裁兼軟件和服務集團總監

“我們堅信 Zephyr 將成為全球領先的易用物聯網平臺之一,它專門針對互聯世界的安全性進行了設計。我們致力于為開發人員提供最好的工具和支持來開發創新解決方案?!?/p>

——Geoff Lees,恩智浦半導體公司高級副總裁兼微控制器總經理

“Zephyr 項目能夠滿足行業對開源 RTOS 日益增長的需求,這種 RTOS 符合當今資源受限的安全物聯網設備的要求。我們很高興能夠參與到這個協作項目中,并為該項目盡一份力,包括為基于 Synopsys ARC 的物聯網 IP 項目提供支持。”

——John Koeter,新思科技 IP 和原型設計副總裁

系統特色

1.單個地址空間

2.高度可配置

3.編譯時資源定義

4.最小的錯誤檢查

5.廣泛的服務套件:

??多線程服務 – 可以用于以優先級為基礎非搶占式的纖程,以及以優先級為基礎搶占式,可選輪詢時間分片的任務;

??中斷服務 – 可以在編譯中和程序運行時處理中斷程序注冊;

??線程間的同步服務 – 提供二進制信號量(Semaphore)、計數信號量、互斥信號量;

??用于基本消息隊列,增強消息隊列和字節流的線程間數據傳遞服務;

??線程間的數據傳遞服務 - 提供基本消息隊列、增強的消息隊列和字節流;

??電源管理服務 – 不需計數的閑置狀態和先進的閑置基礎架構。

架構支持

??ARM

??x86

??ARC

??NIOS II

??Xtensa

??Native POSIX

??RISC V

社區將不斷添加新的架構支持。

子系統支持

1. 藍牙子系統

??Bluetooth5.0 compliant (ESR10)

??Bluetooth Low 能量 Controller support (LE Link Layer)

??Generic Access Profile (GAP) with all possible LE roles

??GATT (Generic Attribute Profile)

??Pairing support, including the Secure Connections feature from Bluetooth 4.2

??IPSP/6LoWPAN for IPv6 connectivity over Bluetooth LE

??Basic Bluetooth BR/EDR (Classic) support

??Clean 人機交互 driver abstraction

??Raw HCI interface to run Zephyr as a Controller instead of a full Host stack

??Verified with multiple popular controllers

??Highly configurable

2. 標準C庫

3. 設備固件升級

4. 記錄子系統

??System Logging(系統記錄)

??Kernel Event Logging(內核時間記錄)

5. 網絡子系統

??IPv6

??IPv4

??Dual stack support(網絡堆棧允許開發人員將系統配置為同時使用IPv6和IPv4)

??UDP

??TCP

??BSD Sockets API

??HTTP

??MQTT

??CoAP

??LWM2M

??RPL

??DNS

??Network 管理學 API

??multiple Network Technologies

??Minimal Copy Network Buffer Management

??IEEE 802.15.4

??Virtual LAN support

??Network traffic classification

6. 電池管理子系統

7. 傳感器子系統

8. 殼層子系統

9. 測試子系統

10. USB設備堆棧

11. 非易失性存儲子系統

社區將不斷添加更多網絡及通信支持。

內核版本

2017年1月推出最新的V1.6.0內核版本

Zephyr v1.6.0內核版本采用統一的內核代替了原來分離的超微內核和微內核,并且簡化了Zephyr整體架構和編程接口。其所支持的架構增加了ARM Cortex-M0/M0+系列,并且擴展了對Cortex-M板的支持。另外,新版本對文檔、基礎設施構建和測試做了很多改進。

主要的升級內容包括:

??引入統一內核,超微內核和微內核被廢除;

??依舊支持原有的API,但是已經棄用;

??將原有的測試和例程轉移到“tests/legacy”和“samples/legacy”中;

??添加統一內核文檔,刪除原有的超微內核/微內核文檔;

??增加支持ARM Cortex-M開發板;

??增加支持USB大容量存儲和訪問文件系統;

??增加對本地藍牙控制器的支持,支持nRF51和nRF52。

2017年3月推出最新的V1.7.0內核版本

Zephyr V1.7.0內核版本繼續對統一的內核進行細化,簡化整個的Zephyr架構和編程接口。新版本將繼續支持V1.5.0或更早版本發布的超微內核和微內核遺留API,也將是最后一個支持該功能的版本。

主要升級內容:

??引入了一個新的原生IP堆棧,用以替換原有的uIP堆棧,新IP協議棧的實現維持原有的功能,添加額外的功能,并便于未來改進;

??增加了對RISC V和Xtensa架構的支持,一共可以支持6種架構:X86架構、ARC架構、ARM架構、NIOS II 架構、RISC V架構和Xtensa架構;

??引進Device Tree機制配置各個平臺特定的設備信息;

??基于ARM的平臺最先使用Device Tree,記錄的信息包括flash/sram的基礎地址,UART設備;

??使用Device Tree的平臺包括NXP Kinetis平臺,ARM Beetle,TI CC3200 LaunchXL, 以及STML32L476平臺。

2017年6月推出最新的V1.8.0內核版本

專為資源受限設備開發的Zephyr物聯網操作系統宣布推出最新的1.8版本,對比上一版本,v1.8的主要更新包括以下幾點:

??Tickless 內核

??BT 5.0功能

??生態系統:支持通過第三方工具Tracing和Debugging

??改進的Build和Debug

??第三方編譯器支持

??Xtensa GCC支持

??改進的Build on 麥金塔 / Windows

??MMU / MPU:初步支持(WIP)

??擴展設備支持

2017年9月Zephyr推出最新的V1.9.0內核版本

Zephyr V1.9.0內核版本專門為物聯網應用做了優化,是一款小型化、可擴展、支持多架構、高安全性的RTOS。新版本所支持的開發板數量持續穩定增長,同時連接性和安全性也做了新的完善。

主要升級內容:

??支持藍牙5.0(除了Advertising Extensions全部支持)

??藍牙認證合格的藍牙BLE控制器

??低功耗藍牙BLE Mesh

??支持LwM2M

??Pthreads兼容API

??BSD插座兼容API, 允許使用眾所周知的跨平臺API編寫/移植簡單的網絡應用程序

??設備樹支持擴展到更多架構

??改進測試套件,增加覆蓋面

??支持堆棧前哨Stack Sentinel

??增加了對安裝了SecureShield MPU的ARC EM Starter 套件的支持(具有MPU的ARC EM7D)

??支持更多開發板:Atmel 的SAM4S Xplained, Olimex STM32-E407 和STM32-P405, STM32F412 Nucleo, STM32F429I-DISC1, TI 的SensorTag, VBLUno51 和 VBLUno52 開發板

??MMU / MPU(續):在原有的基礎上進行線程隔離初始工作,開發者可在低權限水平運行應用程序,以及只訪問自身的數據或明確共享的數據,敏感的應用程序數據可以受到保護。同時,系統的穩健性增強,編程錯誤難以被惡意利用

2017年12月Zephyr推出最新的1.10.0內核版本

Zephyr V1.10.0內核版本的構建工具從原來的Kbuild遷移到跨平臺的CMake,使應用程序開發人員讓Zephyr更容易用于需要不同集成開發環境的不同平臺的開發。

主要升級內容:

??針對用戶空間做了更的內存保護

??系統構建從原來的Kbuild切換到跨平臺的CMake

??支持Newtron Flash文件系統(NFFS)

??與MCUBOOT引導加載程序集成

??增加測試程序的覆蓋范圍,并將大部分測試示例遷移到ztest目錄

??增加更多的SoC、開發板、和傳感器與驅動的程序支持

??改進了nrf52系列SOC的電源管理

??添加了LWM2M多分片網絡數據包支持

??新的CoAP庫實現,支持更長的網絡數據包

??添加了mDNS(組播DNS)支持

??改進IEEE 802.15.4、TCP,RPL,ARP,DNS,LWM2M等穩定性

??改進藍牙、藍牙Mesh穩定性

??支持BLE控制器中的PA / LNA放大器

2018年3月Zephyr推出最新的V1.11.0內核版本

增加對原生的Microsoft Windows開發環境的支持

很多嵌入式開發者依賴并信任Microsoft Windows,將其作為自身的操作系統選擇。Zephyr在過去的幾個版本中開始建立對Windows的支持,該版本是第一個可以完全在微軟平臺上構建的版本。

通過cmake構建系統和Python腳本語言

為確保最佳性能以及與本地開發工具無縫交互,該版本通過CMake構建系統和Python腳本語言的強大力量,以交付一個可擴展的、面向未來的、完全跨平臺的構建系統。

引入了一種新的連接技術—Thread協議

該版本將流行的OpenThread執行集成到Zephyr中,以便用戶使用熟悉的Zephyr網絡API無縫地與Thread網絡交互,并可重復使用現有的802.15.4驅動程序。

使用藍牙低功耗設備進行空中固件升級(OTA DFU)

該版本將一個新框架與一個熟悉的MCUboot加載程序集成來支持MCUmgr,以便Zephyr圖像通過BLE連接發送和編程,并添加一個管理層,可以訪問文件系統并遠程檢索內核統計信息。

支持架構更新

從該版本開始,對稱多處理可用于Tensilica Xtensa構架,允許程序內核同時在多個CPU內核上運行。同時可以在Arm架構和ARC架構上支持線程水平內存保護,以前只能用于x86架構。

V1.12.0內核版本

2018年6月Zephyr推出最新的V1.12.0內核版本。

主要升級內容:

??通過集成openmp的不對稱多處理(AMP)

??包括Mesh在內的Bluetooth Low 能量的持久存儲支持

??802.1Q - 以太網上的虛擬局域網(VLAN)流量

??支持多個并發文件系統設備,partitions和FS types

??以太網網絡管理界面

??基于每個連接的網絡流量優先級

??支持以太網統計計數器

??在本地POSIX端口上支持TAP網絡設備

??命令行Zephyr工具“west”

??SPI從屬支持

??運行時非易失性配置數據存儲系統(設置)

V1.13.0內核版本

2018年9月ZephyrV1.13.0內核版本

該版本主要增強的功能包括:

·可擴展和可插拔的跟蹤支持;

·分區應用內存組織;

·Logging系統大修;

·引入BSD socket API的系統調用;

·支持IEEE 802.1AS-2011通用的精確時間協議generalized Precision 時間 Protocol(gPTP);

·支持鏈路層發現協議(LLDP)TX;

·使用BSD socket API支持TLS和DTLS;

·支持鏈路層組播名稱解析Link Layer Multicast Name Resolution(LLMNR);

·引入重新設計的ADC API和已經更新的Nordic、NXP、Atmel和Synopsys DesignWare驅動程序;

·支持OS驅動的電源管理框架;

·在Armv8-M中對Arm TrustZone提供基本的支持;

V1.14.0內核版本

2019年4月Zephyr推出V1.14.0首個長期支持內核版本(LTS)。

該版本主要增強的內容:

內核和核心組件應用了MISRA-C代碼指南;

通過添加UART,USB和顯示驅動程序來增強本機POSIX端口;

增加具有上層鏈路層和下層鏈路層的實驗性BLE分離軟件控制器,用于支持多個BLE無線電硬件架構;

引入用于管理多個存儲庫的zephyr工具,并增強了對閃存和調試的支持;

在ARMv8m中添加了對應用程序用戶模式,應用程序內存分區和硬件堆棧保護的支持;

定時子系統經過重新設計和重新實現,極大地簡化了生成的驅動程序。TICKLESS_KERNEL模式是該版本所有體系結構的默認模式;

對稱多處理子系統中,增加了一個新的CPU affinity API,可以將線程“固定”到特定的核心或核心集;

對網絡數據包net-pkt API進行大修,并將大多數組件和協議移至使用BSD套接字API;

電源管理子系統大量修復,以支持設備空閑電源管理,并將大部分電源管理邏輯從應用程序移回BSP層;

引入主要更新并對日志記錄和殼層子系統進行大修,支持多個后端,將日志記錄集成到shell中,以及延遲日志處理。

參考資料 >

Zephyr項目統一內核 推出最新的V1.6.0內核版本.網易科技.2017-12-22

生活家百科家居網