What is Zephyr?
Zephyr is a small footprint IoT RTOS (less than 10kB) with no user-space and dynamic allocation which make it suitable to run on resource-constrained platforms. Moreover, it’s modular and supports multiple architectures, including ARM, X86,ARC, NIOS-II and others).
Zephyr is an open source project under Apache 2.0 License and hosted by Linux Foundation. However, Being hosted by Linux Foundation doesn’t mean that Zephyr project is a scaled version of linux OS.
As connectivity is one of the main concerns in IoT, Zephyr provides support for IEEE 802.15.4, Bluetooth V4.0, NFC, WiFi and 3GPP. While security is another concern it also provides a cryptographic library based on TinyCrypt2 and mbedTLS.
Why is Zephyr?
Zephyr claims that its kernel offers a number of features that distinguish it from other small-footprint Oses. Zephyr works on single address-space, where both the application and kernel are combined on a single image and execute in a single address-space; they like to call this feature as library-based RTOS (“kernel-less”) so there is no need for dynamic loading at run-time . Moreover, Zephyr has two Kernel modes : “Nanokernel” — with limited functionality targeting small footprint (below 10k) and “Microkernel” — a superset of nanokernel.
Where is Zepher?
Zepher supports variety of architectures and development boards including X86 boards like MinnowBoard, Genuino 101, Quark D2000 and others; and ARM boards like Arduino Due, ST Nucleo F401RE and others.
The Development Environment supports Windows, Linux and MAC OS. To get started with Zephyr, refer to the official getting started page.
This young and fresh RTOS is already adapted by commercial products like Grush — an interactive Bluetooth toothbrush.