This project describes the design and implementation of a Linux-based, Web-oriented operating system called Awesom-O, designed with a focus on short boot time and small disk footprint.
Among other techniques for lowering boot time, a semi-automatic method for generating a Linux kernel of minimal size for a given platform is developed, making use of an interpreter for the Linux kernel’s configuration language, Kconfig. The boot process of the finished system is analyzed to identify limiting factors in lowering its boot time further, and techniques for overcoming these are suggested.
Excluding the initial BIOS stage of the boot process, the boot time of the finished system—up until it is idling inside the web browser interface waiting for user input—is 3.8 seconds (2.1 seconds to a shell prompt, 1.7 seconds in the kernel) on an Acer Travelmate 8200 laptop with an Intel Core Duo CPU at 2.0 GHz and a Momentus 5400.2 SATA (ST9120821AS) hard drive; 2.4 seconds (1.6 seconds to a shell prompt, 1.1 seconds in the kernel) on a Celsius M460 workstation with an Intel Core 2 Quad CPU at 2.5 GHz and a Barracuda 7200.11 SATA hard drive (ST3500320AS); 4.6 and 4.0 seconds respectively for the same systems when booting from a USB 2.0 device (a ChipsBank CBM2080 USB 2.0 stick); and 12.6 seconds on the BeagleBoard (8 seconds in the bootloader—an obvious area for future improvement).
The Web functionality in Awesom-O is implemented atop the Opera Linux Devices SDK: a software framework for integrating web browser functionality in small Linux-based systems.
Source: Linköping University
Author: Magnusson, Ulf