Open main menu

DAVE Developer's Wiki β

Changes

Deploying Embedded Linux Systems

2,572 bytes added, 14:16, 10 May 2012
Creating the root file system
The first part is the actual root file system, it contains the minimum components to allow the system to boot properly and usually it does not require on-the-field upgrading. The other part is used to store applications binaries and files created and/or modified by the user, thus it must be mounted over a non-volatile memory device.
== Creating the root file system ==  Building a root file system from scratch is definitively a complex task because several well known directories must be created and populated with a lot of files that must follow some standard rules. Usually, it's a good idea to start with a pre-packaged root file system, in order to skip the actual ''creation'' step, and letting you to work on the ''customization'' of the file system. If you want to build a root file system, there are several possibilities that are described in the following sections. === OpenEmbedded === [http://wiki.openembedded.net/index.php/Main_Page OpenEmbedded] is a build framework for Embedded Linux. It offers a cross-compile environment which allows developers to create a complete Linux Distribution for embedded systems. Some of the OpenEmbedded advantages include:* support for many hardware architectures* multiple releases for those architectures* tools for speeding up the process of recreating the base after changes have been made* easy to customize* runs on any Linux distribution* cross-compiles 1000's of packages including GTK+, Qt, the X Windows system, Mono, Java, ... OpenEmbedded is at the basis of some known distribution, like Angstrom, OpenMoko and Poky and it can target a lot of different targets and architectures. Primarily, the project maintains and develops a collection of BitBake (a task execution manager derived from Gentoo's Portage) recipes The recipes consist of the source URL of the package, dependencies and compile or install options. During the build process they are used to track dependencies, cross-compile the package and pack it up, suitable to be installed on the target device. It's also possible to create complete images, consisting of root file system and kernel. As a first step the framework will build a cross-compiler toolchain for the target platform, then the build system builds all the packages included in the selected BitBake recipe, which can range from a single application to an entire Linux distribution. === Arago === [http://arago-project.org/wiki/index.php/Main_Page Arago Project] targets the TI OMAP, Sitara and DaVinci platform, providing a verified, tested and supported subset of packages and has been created to simplify the standard OpenEmbedded approach (mainly setup and interaction). In fact, setting up a complete OE/Bitbake system is a task recommended only to experienced users/developers, so the availability of a SDK that allows building applications for the target without learning OE/Bitbake is very important for the less-experienced audience.
== Deploying the root file system ==
customer
235
edits