|

From real-time to open source: 6 examples of embedded operating systems

From real-time to open source: 6 examples of embedded operating systems

Software is now an essential component of many modern products. But the software has to run somewhere. To do this, we need controllers (computers) and embedded operating systems that run on the controllers. And only then comes our software.

The following is a brief overview of operating systems for embedded systems.

Real-time operating systems

Operating systems for embedded systems are often real-time operating systems (RTOS, Real Time Operating System). A real-time operating system is an operating system that is specially designed to support applications with high timing accuracy requirements. It is characterized by deterministic processing of events in which the response time to incoming events is guaranteed.

In contrast to other operating systems, which often prioritize high performance and flexibility, real-time operating systems are primarily concerned with the reliability and predictability of response times.

Embedded operating systems do not have to be real-time operating systems. However, other framework conditions often require this.

Safe or not?

Systems with requirements for the Functional safety always require a real-time operating system. Typical applications can be found in automation technology, aerospace, medical technology or other safety-critical systems.

Here, processes need to be monitored and controlled in real time to ensure that everything runs smoothly. A real-time operating system ensures that the processes involved are executed on time and deterministically to guarantee a reliable and secure system.

However, there are also many applications where this is not the case, such as digital display panels, ATMs and many other devices. In such cases, we can also install "normal", usually much cheaper embedded operating systems.

Failure of an embedded system, fortunately without serious consequences (source: Flickr)

Commercial real-time operating systems

The litmus test for ROTS is its use in the aerospace industry. Widely used are VxWorks from Windriver, Integrity from Green Hills Software or LynxOS from Lynx Software. All three are certified for applications in many safety-critical industries. But there are many more, especially for domain-specific applications or special controllers.

Open Source

Open Sourcesecure and certified are not mutually exclusive. On the contrary, one could even argue that open source (operating) systems are more secure than non-open source systems. However, open source does not always mean free. In addition, there are now interesting business models based on open source software. For example, via the certification process.

An example of an open source operating system is FreeRTOSwhich is used in a large number of embedded systems. FreeRTOS is actively maintained and further developed.

FreeRTOS has been used in many safety-critical applications and has undergone certification processes for use in various industries, including aerospace and medical devices. For example, FreeRTOS has been certified to the DO-178C-standard for use in aviation.

FreeRTOS-Plus-TCP V3.0.0 adds comprehensive unit test coverage for all lines and branches of code, and has undergone penetration testing and protocol testing by AWS Security to reduce the exposure to security vulnerabilities.

Toshiyanger Walling, Software Development Manager on the FreeRTOS team

Another example of an open source RTOS that has been certified for use in safety-critical applications is the Zephyr project. Zephyr is an open source RTOS that is scalable and lightweight, making it suitable for use in resource-constrained devices. Zephyr has been certified according to the IEC 61508 SIL 2 standard, a safety standard for industrial control systems.

Linux

As the best-known open source operating system, Linux is of course also represented among the embedded operating systems. Under the term Embedded Linux we find many implementations. Embedded Linux is not initially a real-time operating system, but can be used as one with appropriate adaptations. For example, the Zephyr project just mentioned is based on the Linux kernel.

The tip of the iceberg

As mentioned, these are just a few representative examples of embedded operating systems. Others include inyOS, an operating system for wireless sensor networks. Or Contiki, which was developed specifically for the Internet of Things (IoT). RIOT OS and µC/OS are lightweight operating systems. QNX is widely used in the automotive sector.

This is just a small selection, but hopefully it will help a little further with the selection and product analysis.

Photo by Harrison Broadbent on Unsplash

Similar Posts

Leave a Reply