Yoctoproject is a framework for creating Linux distributions for embedded devices. Its layering mechanism makes it easy to add Linux to new target devices highly customized for a particular platform; it can include custom start-up scripts, software packages built with a high degree of optimization for a particular architecture, and different user interfaces from full Gnome desktop to a simple a serial console.
Yocto has 2 basic layers: board support packages layer and core layer. In the BSP layer is where all the custom software and configuration tweaks for a particular platform are included, while the core layer provides the common software stack to provide from a simple command line interface to Sato desktop interface (Matchbox based and Gnome mobile software stack). A third layer could be added to provide additional user interfaces LXDE, XFCE, and more; YP is quite flexible&emdash;one of it major strengths.
A small image just capable of allowing a device to boot.
A console-only image that fully supports the target device hardware.
Image with sato, a mobile environment and visual style for mobile devices. The image supports X11 with a Sato theme, Pimlico applications and contains terminal, editor and file manager.
Builds contents core-image-base plus Freescale test applications and multimedia components.
Builds contents of core-image-sato with Freescale test applications and multimedia with hardware accelerated X11
To build the image:
$ bitbake <image_name>
Build using Dash instead can bring some problems. You can check what your system uses typing: "ls -l /bin/sh". On Ubuntu you can change it using "dpkg-reconfigure bash". Some Ubuntu releases you must use "dpkg-reconfigure dash" and choose Bash