Abstract

First we will talk about how to set up tools to have a close look at the boot process (including kernel and user space). We will explain how to use a Bootchart version written in C. We also developed a Linux shell script to timestamp every message coming from the serial line.

Then we will use a real world example as a support, probably based on a custom board (Neocore 926) or eventually an evaluation board such as the AT91SAM9261EK. This example will consist in an isometric 3D animation (Qt-embedded) which originally takes more than 20 seconds to run. We will improve it step by step. After each stage of optimization we will see how much time has been saved. We will also talk about how to improve U-Boot to load the kernel faster.
Finally the system is completely running in 5 seconds (after the board is powered on).

Biography

Gregory Clement has been involved in Linux development for more than ten years with specific focus on real time and embedded Linux for seven years. He is the Embedded Linux Development Lead of Adeneo Embedded since 2002, where he drives a team of Linux Embedded experts specialized on kernel and drivers development, as well as porting Embedded Linux on new platforms. His team was recently involved in the development of reference BSPs for Freescale on i.MX platforms and Atmel on AT91 platforms.