+++ Luke Kenneth Casson Leighton [2014-12-02 16:19 +0000]:
On Tue, Dec 2, 2014 at 3:37 PM, joem joem@martindale-electric.co.uk wrote:
Debian boots in 0.87 seconds:
to get any OS (such as debian) to boot very very fast you need to make some quite significant modifications. udev has to go (entirely) in favour of a static set of /dev/* entries, for example. the kernel has to be customised to minimise the number of extra pseudo ttys. initrd has to go: everything must be in a static monstrously-large kernel (which itself becomes problematic as that adversely affects load time).
Exatly. fast booting is a direct trade-off between generality and speed. Nearly everything you do to make a standard image that will boot on anything, also makes the boot slower. Nearly everything you do to make it go faster involves removing options, removing detection code and pre-configuring things. Thus whilst it is indeed possible to make linux boot very fast indeed (see numerous Embedded Linux Conference talks on the subject) it comes by making very hardware/case-specific optimisations.
That is often worth the effort for specific cases, but always involves divergence for a binary distro (less so for a source distro) that you then need to maintain if you want to keep that feature working on new releases.
All that said, I'm sure that study of Debian and options for having standardised ways of improving boottime would be worthwhile. I bet there are things we could do to at least make this easier and possibly make things go faster _without_ undue loss of generality, especially as there has been a pile of change recently in the boot process (don't mention the war! :-)
Wookey