Content deleted Content added
Introiboad (talk | contribs) No edit summary |
m removed weasel words Tags: Visual edit Mobile edit Mobile web edit Advanced mobile edit |
||
(78 intermediate revisions by 36 users not shown) | |||
Line 1:
{{Short description|Real-time operating system}}
{{Infobox OS
| name
| logo = Zephyr RTOS logo
| logo size
| logo caption = Zephyr Project
| logo alt
| screenshot
| screenshot size
| screenshot alt
| caption
| developer
| family
| working state
| source model
| released
| latest release date
▲| latest release version = 2.5.0
▲| latest release date = {{Start date and age|2021|02|15|df=yes}}<ref>{{cite web |url= https://github.com/zephyrproject-rtos/zephyr/releases/tag/zephyr-v2.5.0 |title= Zephyr v2.5.0 }}</ref>
▲| marketing target = [[Internet of things]]
▲| programmed in = [[C (programming language)|C]]
▲| language = English
|
| supported platforms = [[ARM architecture|ARM]] ([[Cortex-M]], [[ARM Cortex-R|Cortex-R]], [[Cortex-A]]), [[ARC (processor)|ARC]], [[MIPS architecture|MIPS]], [[Nios II]], [[RISC-V]], [[Tensilica|Xtensa]], [[SPARC]], [[x86]], [[x86-64]]
▲| package manager = <!-- dpkg, rpm, Windows installer, etc. -->
| kernel type = [[Microkernel]] (pre-v1.6)<ref name="NanoMicrokernel"/><ref name="Monolithic1"/><ref name="Monolithic2"/><br />[[Monolithic kernel|Monolithic]] (v1.6+)<ref name="Monolithic1"/><ref name="Monolithic2"/>
| ui =
▲| userland =
▲| license = [[Apache License 2.0|Apache 2.0]]
▲| preceded by = Wind River Rocket
▲| succeeded by =
▲| other articles =
}}
'''Zephyr''' ({{IPAc-en|ˈ|z|ɛ|f|_|ə|r}}) is a small [[real-time operating system]] (RTOS)<ref>{{Cite news|url=http://linuxgizmos.com/zephyr-a-tiny-open-source-iot-rtos/|title=Meet Linux's little brother: Zephyr, a tiny open-source IoT RTOS|date=2016-02-17|work=LinuxGizmos.com|access-date=2018-02-23|language=en-US}}</ref> for connected, resource-constrained and [[embedded
It is named after [[Zephyrus]], the ancient Greek god of the west wind.<ref>{{Cite web|url=https://docs.zephyrproject.org/latest/develop/west/index.html#west-name|title=West (Zephyr's meta-tool) — Zephyr Project Documentation|website=docs.zephyrproject.org}}</ref>
▲'''Zephyr''' is a small [[real-time operating system]]<ref>{{Cite news|url=http://linuxgizmos.com/zephyr-a-tiny-open-source-iot-rtos/|title=Meet Linux's little brother: Zephyr, a tiny open-source IoT RTOS|date=2016-02-17|work=LinuxGizmos.com|access-date=2018-02-23|language=en-US}}</ref> for connected, resource-constrained and embedded devices (with an emphasis on [[microcontroller]]s) supporting multiple architectures and released under the [[Apache License 2.0]]. Beyond its [[Kernel (operating system)|kernel]], Zephyr includes all the components and libraries needed to develop a full application such as [[device driver]]s, [[protocol stack]]s, [[file system]]s, and [[firmware update]]s.<ref>{{Cite web|url=https://docs.zephyrproject.org/latest/introduction/index.html|title=Zephyr Project documentation: Introduction|language=en}}</ref>
==
In February 2016,
Since then, early members and supporters of Zephyr include [[Intel]], [[NXP Semiconductors]], [[Synopsys]], [[Linaro]],<ref>{{Cite
{{As of|2025|01}}, Zephyr had the largest number of contributors and commits compared to other RTOSes (including [[Mbed]], [[RT-Thread]], [[NuttX]], and [[RIOT (operating system)|RIOT]]).<ref>{{Cite web |url=https://github.com/zephyrproject-rtos/zephyr |title=Zephyr GitHub page |website=[[GitHub]] |date=January 30, 2025}}</ref>
== Features ==▼
Zephyr intends to provide all components needed to develop resource-constrained and embedded or microcontroller-based applications. This includes, but is not limited to:<ref>{{Cite web|url=https://docs.zephyrproject.org/latest/introduction/index.html|title=Zephyr Project documentation: Introduction|language=en}}</ref>▼
▲Zephyr intends to provide all components needed to develop resource-constrained and embedded or microcontroller-based applications. This includes
* A small kernel
* A flexible configuration and build system for compile-time definition of required resources and modules
* A set of protocol stacks ([[IPv4]] and [[IPv6]], [[Constrained Application Protocol]] (CoAP), [[OMA LWM2M|LwM2M]], [[MQTT]], [[802.15.4]], [[Thread (network protocol)|Thread]], [[Bluetooth Low Energy]], [[CAN bus|CAN]])
* A virtual file system interface with several flash file systems for non-volatile storage ([[FatFs]], LittleFS, NVS)
* Management and device [[firmware update]] mechanisms
===
Zephyr uses [[Kconfig]] and [[
===''West'' utility tool===
▲Zephyr uses [[Kconfig]] and [[device tree]] as its configuration systems, inherited from the [[Linux kernel]] but implemented in Python for portability to non-Unix operating systems.<ref>{{Cite web|url=https://github.com/zephyrproject-rtos/zephyr/tree/master/scripts|title=scripts/ folder on GitHub|date=12 May 2020}}</ref> The RTOS build system is based on [[CMake]], which allows Zephyr applications to be built on [[Linux]], [[macOS]] and [[Microsoft Windows]].<ref>{{Cite web|url=https://docs.zephyrproject.org/latest/application/index.html |title=Application Development – Zephyr Project Documentation |website=Zephyr Project}}</ref>
Zephyr has a general-purpose tool called ''West'' for managing repositories, downloading programs to hardware, etc.
===
Early Zephyr kernels used a dual [[Microkernel|nanokernel plus microkernel]] design.<ref name="NanoMicrokernel">{{Cite web |last=Wasserman |first=Shawn |date=February 22, 2016 |url=https://mobile.engineering.com/amp/11530.html |title=How Linux's IoT Zephyr Operating System Works |website=Engineering.com}}</ref><ref name="Monolithic1">{{Cite web |last=Helm |first=Maureen |date=December 15, 2016 |url=https://www.zephyrproject.org/announcing-zephyr-os-v1-6-0/ |title=Announcing Zephyr OS v1.6.0 |website=Zephyr Project}}</ref><ref name="Monolithic2">{{Cite web |last=Wong |first=William G. |date=July 6, 2017 |url=https://www.electronicdesign.com/technologies/embedded-revolution/article/21805266/zephyr-a-wearable-operating-system |title=Zephyr: A Wearable Operating System |website=[[Electronic Design]]}}</ref> In December 2016, with Zephyr 1.6, this changed to a [[monolithic kernel]].<ref name="Monolithic1"/><ref name="Monolithic2"/>
The kernel offers several features that distinguish it from other small OSes:<ref>{{Cite web|url=https://docs.zephyrproject.org/latest/introduction/index.html|title=Zephyr Project documentation: Introduction|language=en}}</ref>▼
▲The kernel offers several features that distinguish it from other small OSes:<ref
* [[Single address space operating system|Single address space]]
* Multiple scheduling algorithms
Line 66 ⟶ 68:
* [[Asymmetric multiprocessing]] (AMP, based on OpenAMP) and [[symmetric multiprocessing]] (SMP) support
===
A group is dedicated to maintaining and improving the security.<ref>{{Cite
==See also==
* [[Embedded operating system]]
==References==
{{Reflist}}
{{Real-time operating systems}}
{{Linux Foundation}}
[[Category:ARM operating systems]]
Line 87 ⟶ 84:
[[Category:Free software operating systems]]
[[Category:Linux Foundation projects]]
[[Category:Real-time operating systems]]
[[Category:Software using the Apache license]]
[[Category:IA-32 operating systems]]
[[Category:X86-64 operating systems]]
[[Category:MIPS operating systems]]
|