Boot Performance
Goal description
Making sure that the boot is fast and correct. As the kernel is more and more event based, it's hard for init scripts to run after an event occured. So we need a way to make sure booting happens correctly. Next to making sure booting will be correct, we want to have a fast boot. Fast boot is nice for desktop users as they boot often, though it's also nice for server users as it can make a difference in SLAs as one can reduce the downtime.
Current status
- dash as default system shell which is the main speedup when booting. Note that there are still some issues to be resolved regarding diversions.
insserv used by default for dependency based booting to make it easier to have a correct boot sequence and to make it possible to run the initscripts heavily in parallel
How to help
- Make sure that the LSB header in initscripts are correct
- Fix issues regarding diversions in dash, bash
Correct remaining init.d dependencies.
- Fix issues regarding surprise of dependency based boot sequence and need to update the LSB headers when a different sequence is needed
- Help upstream upstart development to have proper inittab and SysV initscript support
- Help to trim initrd
- Help investigating readahead implementations (like readahead and readahead-fedora)
Test concurrent booting (echo CONCURRENCY=makefile >> /etc/default/rcS)
- Create bootcharts and investigate what can go faster
Next Milestone
- Solve issues with system shell, dependency based booting and update bootchart package
