Ticket #19 (accepted enhancement)
Boot timing (sysv services)
| Reported by: | vcaron | Owned by: | zecrazytux |
|---|---|---|---|
| Priority: | normal | Milestone: | rev6 |
| Component: | distribution_improvement | Version: | |
| Severity: | minor | Keywords: | |
| Cc: | zecrazytux, |
Description
I've tried a very simple hack to time the different service startup. I love Debian and its /etc/default/* shell fragments, they allow lots of useful hijacking:
# Append to your /etc/default/rcS
debug_timing() {
case "$1" in
splash*) $@;;
*) { time $@; echo $@ >&2; } 3>&2 2>&1 1>&3- | (tr '\n' ' '; echo) >>/lib/init/rw/timing.log;;
esac
}
export debug=debug_timing
Forgive the shell ugliness only to format one service per line. Result on my Neo:
real 0m9.203s user 0m0.420s sys 0m1.165s /etc/rcS.d/S03udev start real 0m0.358s user 0m0.170s sys 0m0.145s sh /etc/rcS.d/S04mountdevsubfs.sh start real 0m0.225s user 0m0.075s sys 0m0.110s /etc/rcS.d/S05bootlogd start real 0m1.210s user 0m0.260s sys 0m0.360s sh /etc/rcS.d/S10checkroot.sh start real 0m1.639s user 0m0.090s sys 0m0.200s sh /etc/rcS.d/S11hwclock.sh start real 0m1.245s user 0m0.425s sys 0m0.705s sh /etc/rcS.d/S12mtab.sh start real 0m0.306s user 0m0.145s sys 0m0.140s /etc/rcS.d/S18ifupdown-clean start real 0m2.528s user 0m0.190s sys 0m1.115s /etc/rcS.d/S20module-init-tools start real 0m1.469s user 0m0.230s sys 0m0.700s sh /etc/rcS.d/S30checkfs.sh start real 0m0.265s user 0m0.100s sys 0m0.150s /etc/rcS.d/S30procps start real 0m0.434s user 0m0.125s sys 0m0.240s sh /etc/rcS.d/S35mountall.sh start real 0m0.689s user 0m0.200s sys 0m0.455s sh /etc/rcS.d/S36mountall-bootclean.sh start real 0m0.109s user 0m0.025s sys 0m0.060s /etc/rcS.d/S36udev-mtab start real 0m0.395s user 0m0.115s sys 0m0.180s /etc/rcS.d/S39ifupdown start real 0m1.415s user 0m0.595s sys 0m0.720s /etc/rcS.d/S40networking start real 0m0.818s user 0m0.220s sys 0m0.545s /etc/rcS.d/S50alsa-utils start real 0m0.987s user 0m0.325s sys 0m0.635s sh /etc/rcS.d/S55bootmisc.sh start real 0m0.317s user 0m0.140s sys 0m0.150s /etc/rcS.d/S55urandom start real 0m0.371s user 0m0.185s sys 0m0.165s /etc/rcS.d/S70x11-common start real 0m0.091s user 0m0.020s sys 0m0.050s /etc/rcS.d/S99stop-bootlogd-single start real 0m0.875s user 0m0.200s sys 0m0.640s /etc/rc2.d/S12dbus start real 0m0.873s user 0m0.045s sys 0m0.245s /etc/rc2.d/S20dropbear start real 0m0.939s user 0m0.160s sys 0m0.660s /etc/rc2.d/S20gpsd start real 0m0.221s user 0m0.085s sys 0m0.105s /etc/rc2.d/S20nodm start real 0m1.171s user 0m0.120s sys 0m0.470s /etc/rc2.d/S22gsm0710muxd start real 0m0.414s user 0m0.090s sys 0m0.055s /etc/rc2.d/S99rc.local start real 0m0.295s user 0m0.035s sys 0m0.070s /etc/rc2.d/S99rmnologin start real 0m0.373s user 0m0.105s sys 0m0.090s /etc/rc2.d/S99stop-bootlogd start
Winner hands down is udev. Since OpenMoko? is fixed and known hardware, we could provide a static /dev ? Then udev could be started much later to handle pluggable thingies.
Change History
comment:1 Changed 3 years ago by jblondon
- Status changed from new to assigned
- Owner set to ppronchery
comment:2 Changed 3 years ago by Detructor
isn't that already deployed in hackable:1? It seems so...
comment:3 Changed 3 years ago by Deubeuliou
- Cc zecrazytux added
- Milestone set to rev6
to be confirmed
zecrazytux, are you interested by this one ?
comment:4 Changed 3 years ago by zecrazytux
- Owner changed from ppronchery to zecrazytux
- Status changed from assigned to accepted
Bootchart there: http://fuckpaste.zecrazytux.net/h1/bootchart.png
Note: See
TracTickets for help on using
tickets.

Hi,
thank your for this bench, khorben what is your opinion about that ?