Back to the Overview

Choosing a Linux for embedded Systems

ELinOS, Linux

When it comes to choosing an embedded Linux distribution for an embedded system, requirements like scalability or the real-time behaviour are in mind of the responsible project manager. But there are also not-so-obvious points that have to be considered.

Imagine this: A manufacturer of industrial weighing systems is about to build a new series of balances for parcel counters in production halls. For the internal deploying system of several of the manufacturer’s customers it would be a good idea to weigh incoming packages so the customer could learn what is inside of a certain type of package without opening it. Thus, they could be seamlessly conveyed to the right point in a production hall. Network connections should be easy to set up.

A traditional embedded Linux distribution will be easily found and the project manager would be happy he could take the first step. However, the company’s IT policy queers the manager’s pitch: All productive IT systems including development machines have to run on Windows OS. As a consequence, the development of functionalities for the embedded device is just not possible.

SYSGO’s embedded Linux ELinOS is built to master snares like this, thus customers can easily deploy it for a “fast out-of-the-box” experience. In case of the manufacturer the Eclipse-based integrated development environment (IDE) CODEO would solve the problem, because CODEO runs on Windows.

Very easily expandable lightweight Linux

Traditional Linux distributions come with a lot of package. Lightweight Linux distributions don’t have this kind of feature-richness, so the memory footprint is low and there is only a small attack surface. Nevertheless: If you need a certain feature on this lightweight distribution it has to be laboriously configured and installed. Unlike this, lightweight ELinOS comes with its Feature Assembler that enables embedded developers to define the system configuration on a high level, so ELinOS combines the best of these two worlds: A small attack surface and easy to set up feature-richness.

Because nowadays embedded systems running on Linux are commonly attached to networks, security is a rising issue that rapidly becomes more and more vital. Common embedded Linux distributions security is no longer sufficient, because many of them lack of security functionalities and services. Unlike other, ELinOS’ modular approach allows to operate a small base system by only implementing components the customer’s system really requires. Therefore, ELinOS is always tailored to the needs of a customer while hard to attack, because it has only a small attack surface. Also, SYSGO provides a wide range of security services for ELinOS such as the support of address space layout randomization (ASLR) which gives attackers a hard time spying on memory segments.

In some cases, requirements have to be balanced: In terms of security and simplifying the development for embedded systems, Long-Term-Support is a vital issue. Because of the relatively long life-cycles of many customer products and Yocto’s fast six months release cycle, SYSGO choose (instead of utilizing Yocto) to offer a secure Debian base (while keeping Yocto kernel compatibilities) and Long-Term-Support with ELinOS 7.

Docker Support and Security

To increase security even more ELinOS comes with Docker support, so certain services can be isolated from the core system. Docker enables embedded developers to easily setup environments to extend existing systems. Certain functionalities can be easily deployed, thus making development more securely and comfortably.

Additionally, SYSGO provides notes about security issues. The ELinOS Security Support allows ELinOS customers to improve and maintain the security of their systems by receiving regular customized security advisories about newly identified security issues and early access to updated software packages.

In case of the project manager: These benefits help embedded developer teams building secure industrial applications like weighing and conveying systems in a very comfort and easy manner. A plus for all embedded developers who need to focus on quality code and functionality and customers who demand reliable products.

More information at