HOME

TheInfoList



OR:

Zephyr () is a small
real-time operating system A real-time operating system (RTOS) is an operating system (OS) for real-time computing applications that processes data and events that have critically defined time constraints. A RTOS is distinct from a time-sharing operating system, such as Unix ...
(RTOS) for connected, resource-constrained and
embedded device An embedded system is a specialized computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or Electronics, electronic syst ...
s (with an emphasis on
microcontroller A microcontroller (MC, uC, or μC) or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/output peripherals. Pro ...
s) supporting multiple architectures and released under the
Apache License The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software ...
2.0. Zephyr includes a kernel, and all components and
libraries A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
,
device driver In the context of an operating system, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabli ...
s,
protocol stack The protocol stack or network stack is an implementation of a computer networking protocol suite or protocol family. Some of these terms are used interchangeably but strictly speaking, the ''suite'' is the definition of the communication protoc ...
s, file systems, and firmware updates, needed to develop full
application software Application software is any computer program that is intended for end-user use not operating, administering or programming the computer. An application (app, application program, software application) is any program that can be categorized as ...
. It is named after
Zephyrus In Greek mythology and religion, Zephyrus () (), also spelled in English as Zephyr (), is the god and personification of the West wind, one of the several wind gods, the Anemoi. The son of Eos (the goddess of the dawn) and Astraeus, Zephyrus is t ...
, the ancient Greek god of the west wind.


History

Zephyr originated from Virtuoso RTOS for
digital signal processor A digital signal processor (DSP) is a specialized microprocessor chip, with its architecture optimized for the operational needs of digital signal processing. DSPs are fabricated on metal–oxide–semiconductor (MOS) integrated circuit chips. ...
s (DSPs). In 2001,
Wind River Systems Wind River Systems, Inc., also known as Wind River (trademarked as Wndrvr), is an Alameda, California–based company, subsidiary of Aptiv PLC. The company develops embedded system and cloud software consisting of real-time operating systems sof ...
acquired Belgian software company Eonic Systems, the developer of Virtuoso. In November 2015, Wind River Systems renamed the
operating system An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ...
to ''Rocket'', made it open-source and royalty-free. Compared to Wind River's other RTOS,
VxWorks VxWorks is a real-time operating system (or RTOS) developed as proprietary software by Wind River Systems, a subsidiary of Aptiv. First released in 1987, VxWorks is designed for use in embedded systems requiring real-time, Deterministic system, ...
, Rocket had much smaller memory needs, especially suitable for sensors and single-function embedded devices. Rocket could fit into as little as 4 KB of memory, while VxWorks needed 200 KB or more. In February 2016, Rocket became a hosted collaborative project of the
Linux Foundation The Linux Foundation (LF) is a non-profit organization established in 2000 to support Linux development and open-source software projects. Background The Linux Foundation started as Open Source Development Labs in 2000 to standardize and prom ...
under the name ''Zephyr''. Wind River Systems contributed the Rocket kernel to Zephyr, but still provided Rocket to its clients, charging them for the cloud services. As a result, Rocket became "essentially the commercial version of Zephyr". Since then, early members and supporters of Zephyr include
Intel Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, and Delaware General Corporation Law, incorporated in Delaware. Intel designs, manufactures, and sells computer compo ...
,
NXP Semiconductors NXP Semiconductors N.V. is a Dutch semiconductor manufacturing and design company with headquarters in Eindhoven, Netherlands. It is the third largest European semiconductor company by market capitalization as of 2024. The company employs approx ...
,
Synopsys Synopsys, Inc. is an American electronic design automation (EDA) company headquartered in Sunnyvale, California, that focuses on silicon design and verification, silicon intellectual property and software security and quality. Synopsys sup ...
, Linaro,
Texas Instruments Texas Instruments Incorporated (TI) is an American multinational semiconductor company headquartered in Dallas, Texas. It is one of the top 10 semiconductor companies worldwide based on sales volume. The company's focus is on developing analog ...
, Nordic Semiconductor, Oticon, and Bose. , Zephyr had the largest number of contributors and commits compared to other RTOSes (including Mbed, RT-Thread,
NuttX Apache NuttX is a Free and open-source software, free and open-source real-time operating system (RTOS) with an emphasis on technical standards compliance and on having a small footprint. It is scalable from 8-bit to 64-bit microcontroller envir ...
, and
RIOT A riot or mob violence is a form of civil disorder commonly characterized by a group lashing out in a violent public disturbance against authority, property, or people. Riots typically involve destruction of property, public or private. The p ...
).


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: * A small kernel * A flexible configuration and build system for compile-time definition of required resources and modules * A set of protocol stacks (
IPv4 Internet Protocol version 4 (IPv4) is the first version of the Internet Protocol (IP) as a standalone specification. It is one of the core protocols of standards-based internetworking methods in the Internet and other packet-switched networks. ...
and
IPv6 Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communication protocol, communications protocol that provides an identification and location system for computers on networks and routes traffic ...
, Constrained Application Protocol (CoAP), LwM2M, MQTT, 802.15.4, Thread,
Bluetooth Low Energy Bluetooth Low Energy (Bluetooth LE, colloquially BLE, formerly marketed as Bluetooth Smart) is a wireless personal area network technology designed and marketed by the Bluetooth Special Interest Group (Bluetooth SIG) aimed at novel applications ...
, CAN) * A virtual file system interface with several flash file systems for non-volatile storage ( FatFs, LittleFS, NVS) * Management and device firmware update mechanisms


Configuration and build system

Zephyr uses Kconfig and devicetree as its configuration systems, inherited from the
Linux kernel The Linux kernel is a Free and open-source software, free and open source Unix-like kernel (operating system), kernel that is used in many computer systems worldwide. The kernel was created by Linus Torvalds in 1991 and was soon adopted as the k ...
but implemented in the programming language Python for portability to non-
Unix Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
operating systems. The RTOS build system is based on CMake, which allows Zephyr applications to be built on
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
, and
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
.


Utility tool "West"

Zephyr has a general-purpose tool called "west" for managing repositories, downloading programs to hardware, etc.


Kernel

Early Zephyr kernels used a dual nanokernel plus microkernel design. In December 2016, with Zephyr 1.6, this changed to a
monolithic kernel A monolithic kernel is an operating system software architecture, architecture with the entire operating system running in kernel space. The monolithic model differs from other architectures such as the microkernel in that it alone defines a high ...
. The kernel offers several features that distinguish it from other small OSes: * Single address space * Multiple scheduling algorithms * Highly configurable and modular for flexibility, with resources defined at compile-time * Memory protection unit (MPU) based protection *
Asymmetric multiprocessing An asymmetric multiprocessing (AMP or ASMP) system is a multiprocessor computer system where not all of the multiple interconnected central processing units (CPUs) are treated equally. For example, a system might allow (either at the hardware or op ...
(AMP, based on OpenAMP) and
symmetric multiprocessing Symmetric multiprocessing or shared-memory multiprocessing (SMP) involves a multiprocessor computer hardware and software architecture where two or more identical processors are connected to a single, shared main memory, have full access to all ...
(SMP) support


Security

A group is dedicated to maintaining and improving the security. Also, being owned and supported by a community means the world's open source developers are vetting the code, which significantly increases security.


See also

*
Embedded operating system An embedded operating system (EOS) is an operating system designed specifically for embedded computer systems. These systems aim to enhance functionality and reliability to perform dedicated tasks. When the multitasking method employed allows ...


References

{{Linux Foundation ARM operating systems Embedded operating systems Free software operating systems Linux Foundation projects Real-time operating systems Software using the Apache license IA-32 operating systems X86-64 operating systems MIPS operating systems