speeding up booting

Mitch Bradley wmb at laptop.org
Tue Feb 3 18:36:02 EST 2009

Martin Langhoff wrote:
> On Wed, Feb 4, 2009 at 11:30 AM, Mitch Bradley <wmb at laptop.org> wrote:
>> I have zero confidence that the approach they are taking will be
>> effective on XO.
> After watching dsd bump into the busy-wait thing in the cafe-nand
> driver [1]... I am coming to understand how different our hw profile
> is from the norm when it comes to performance.
> Mitch, do you have a list of things to try, things that would probably
> work on our HW? Things that aren't in Arjan van der Ven's list, for
> example, or in Fedora's list...

See http://dev.laptop.org/ticket/4349 .  The basic approach I took was:

a) Remove unused junk from the first-level rc script and its associated 
"functions" file (80% of it or more is just totally irrelvant for us)
b) Strip down the udev rules to almost nothing, creating the base /dev 
directory by untar'ing a small file

Additional saving could be had by:

* Replacing the sysV initscripts with targeted BSD-style rc.*

* NAND partitioning, and also probably by storing some key files 
uncompressed on NAND (of course UBI would better ...).

* Splitting the initrd into "activation needed" and "already activated" 
versions, making the latter very simple - probably busybox-based. (saves 
the time to load, uncompress, and verify the big initrd with all the 
python libs)

* Modifying the kernel so it doesn't waste time probing for stuff that 
can't be there, nor for stuff that is a priori known to be present.

* Suppressing kernel printfs

* Doing something to speed up X startup.  I saw some suggestions at one 
point on a web site talking about near-instant startup.

All of the components involved spend a lot of time "figuring out the 
answer" to questions whose answer is known in advance.  That's great 
when you want the same image to work on any old PC it happens to land 
on, but costly in our case.

> cheers,
> m
> [1] - http://www.mail-archive.com/devel@lists.laptop.org/msg16431.html

More information about the Devel mailing list