AddThis Social Bookmark Button

RISORSE

09 Debug Tools

GDB

Trace

System Profile

Hardware

08 Network Services

Internet Super Server

SNMP

Telenet

SSH

HTTP

DHCP

07 Bootloader

bootloaders

network booting

Disk/CF LILO

DiskOnChip GRUB

U-Boot

06 Mount RFS

Overview
When the RFS content and storage media are ready, the developer can setup and mount RFS. First of all, we must select the file system for RFS, then convert the content to the required file system, or install the RFS on the devices.

File Systems
It is a comprehensive procedure to select the file systems, which is a balance of media properties, performance, system configuration. The developer should consider following issues when he design the file system. Of course, the developer can use two file systems as combination for embedded system.
Is the file system writeable?
Is the file system using pemernent storage?
Should the system recovery from power off?
Does the file system support compressed?
Does the file loaded to RAM first?

Besides those, the developer has better to read the manual of selected file systems to find out its limitation.

NFS/RFS

05 Memory Technology Device (MTD) Management

Overview

Most of the embedded systems are using memory devices rather than HDDs. The memory devices includes RAM, ROM, CFI NOR flash, NAND flash, Compact flash, PCMCIA card and other flash cards. Accordingly, there are many different file systems and technologies available for different memory devices. The developer have to study the combination and feature sets for the whole projects. Sometimes more than one file system must be used in a single system. And the operation of file and partitions are quite different from standard PC. MTD (Memory Technology Device) is available for embedded Linux.

Devices supported by MTD

http://www.linux-mtd.infradead.org/
MTD subsystem is developing independently. The developer has to download the latest source from this site to integrate with your kernels.

Basic of MTD
The MTD has own device files in mtdN (character device), mtdrN (character device, read only), mtdblockN (block device, read only, JFFS/JFFS2), nftlLN (NFTL), ftlN (FTL).

Configure MTD in the Kernel

04 Root File Systems (RFS)

Structure of RFS

libc

kernel module

kernel image

device file

main system application

custom application

system init

03 Kernels

Kernel Selection

Kernel keeps growing to support new hardware and devices. The developer should study the kernel very carefully to check the availablity of specified features in the kernels.

Kernel Configuration

Build Kernel

Install Kernel

01 Hardware

Embedded Linux

Heat Spreader

Lid - Heat spreader

Embedded Linux

Linux is a major operation system in embedded systems, more and more developers consider Linux for the future projects. The reason why Linux gets popular is due to its nature of open source. However development of embedded Linux is quite complicated and demands very deep know-how in whole operation system, from tools, kernels, bootloader, memory technologies and kernels. It is absolutely a technology massive job to develop an embedded Linux project. For those developers who are more familiar with Windows platform or small embedded systems, it is better to install a Linux PC from scratch and learn to work on Linux desktop PC as first step.