Linux Embedded

  • Print

The embedded world of Linux offers many forms of solutions for developers. Different processor manufacturers also support different solutions. Linux Embedded is mainly run on ARM processors, but ATOM based processors are also popular. In the early years if Embedded Linux, uClinux was about the only choice, but was mainly intended for power Micro Processors without a Memory Management Unit. Nowadays various operating system build environments are available of which Poky Linux is the most complete. Both Poky Linux and Angstrom is based on Open Embedded which forms the bases of these build tools. Buildroot is another distribution that makes use of the Linux KBuild system. Although Buildroot is not that comprehensive, it is easy to setup, adding new packages are straight forward and building make use of standard Makefiles.

 

Open Embedded

OE Logo

Open Embedded is a cross-compile build environment based on Bitbake makelike build tool and recipe parser. Open Embedded at it's heart has as set of recipes to retrieve packages, compile them and stage / install them to be download on a target device. Recipes also exist to build the Toolchains for a specific architecture and most important building the kernel. Building of the Linux kernel is not simply compiling the code, but retrieving a specific version, selecting a setup for your processor and board. Only then to compile it. Before the kernel can be loaded, the processor needs to be bootstrapped, boot loader started and only then unpacking and booting the kernel. Open Embedded take care of staging and packaging the root filesystem, building the bootstrap, boot loader and the kernel.

 

The Angstrom-Distribution

Angstrom Logo

The Angstrom-Distribution is based on Open Embedded and offer a pre-configured environment ready to be used with a wide variety of CPU boards which range from ARM, MPUs, MCUs and ATOM based boards. Angstrom offers limited support and recipes are many times outdated, but none the less if your platform is supported it offers a good solution.

 

The Poky Linux Build System

Poky Linux

The Poky Linux build system is part of the Yocto Project, which is an open source collaboration project that provides templates, tools and methods to help you create custom Linux-based systems for embedded products regardless of the hardware architecture. Poky Linux is the most complete build system, toolset and recipes to build a complete custom Embedded Linux release from scratch. Open Embedded provide many recipes for different packages and by configuring Poky these can be bundled into a portable root files system ready to be installed on your hardware. Poky also take care of configuring the Linux kernel for your hardware architecture, building bootstrap images and bootloader.

 

Buildroot

Buildroot

 

Buildroot is an excellent choice where your device will have a small RootFS foot print. It make use of the Linux Kernel KBuild System. Build configurations are easy to setup and maintain. Adding new packages to the build system is straightforward without any complicated rules to follow. Buildroot will build your Toolchain if needed, Bootstrap image, Boot manager, RootFS and kernel. If your device is a simple touch panel running a QT frontend or even without a display, Buildroot will be perfect for the job.