Reducing Boot Time On a General Linux Distro
Linzer writes "In this blog entry, Fred Crozat (head of Mandriva's engineering team in France) explains in great detail how his team has been detecting and getting rid of bottlenecks in the boot process, from the early stages to loading the desktop environment, thus decreasing overall boot time. An informative tour of the nuts and bolts of the boot process and how they can be tinkered with: initrd, initscripts, udev, modprobe calls. The basic tool they use for performance analysis is bootchart, which produces a map of process information and resource utilization during boot. The final trick: preloading desktop environment files while waiting for the user to type her password."
The use of "they" as a singular pronoun is by no means universally accepted.
On my systems, it's the BIOS that takes a very large chunk of the overall boot time. As far as it goes, I think the Core2 machine takes about the same amount of time to start loading the OS as the old 486 used to.
Having an x86_64 architecture is nice, but why oh why are we still lumbered with that legacy piece of you-know-what? I think I want a Mac Mini now, just because of that...!
-- Steve
I used to have that problem. Drove me bananas. The problem wasn't fixed until I got a new computer. I did find a slightly better solution than rebooting, though. I used to keep a CLI window up. If the mouse failed, I'd unload the USBHID kernel modules, then reload them. I don't remember which modules in specific, but it did provide relief without rebooting.
Unfortunately, this was a fairly common issue with the Linux kernel. There was little interest in fixing it at the time, so you may just need new hardware. (It's possible that the issue was ignored because it was caused by poor USB implementations. Which would hopefully mean that newer hardware is unaffected.)
Javascript + Nintendo DSi = DSiCade
Actually, a Cobalt Qube with no fan because it runs cool enough to not need it. It does a fine job of powering IPCop on its old 250mhz MIPS processor, providing a firewall, SQUID, and NAT for the house, and only using a handful of watts while doing it.
Nostalgia's not what it used to be.
OK, er, you fail. Epically.
These are completely different types of work. What Arjan is doing is tailoring boot to a specific set of software running on a specific set of hardware, using an entirely legacy-free init system.
This is nothing at all like what Fred is doing, which is optimizing a legacy boot system for completely generic hardware and software - it has to run on any system, with any set of software available from the Mandriva repositories installed.
The two types of work are utterly and entirely different.
For the record, another of our engineers - Claudio Matsuoka - has been working on the *other* type of boot system for several months now. It began as a re-implementation of the 'fastinit' system found in the Xandros distribution on the Eee. This system is called 'finit', and you can find it at http://helllabs.org/finit/ . It is used in Mandriva Mini, our custom edition for netbook OEMs. It pre-dates Arjan's work substantially, or at least the public announcement of it.