Posts tagged ‘boot’

Un boot allegro con finit-arc

Ho trovato la giusta combinazione di tempo/voglia/karma per mettere mano prima agli script di init (con quick-init) e poi a init stesso (con finit-arc).

Tutto questo grazie al lavoro di adriano

Ho provato entrambe le soluzioni, e alla fine ho scelto finit-arc perchè 1) mi consente di fare il boot “alla vecchia maniera” in caso di necessità e 2) è risultato anche più veloce di quick-init.

Cronometro manuale alla mano (nessuna voglia di installare bootchart) ora l’eeepc 901 di cui dispongo fa il boot da grub a X in circa 8 secondi.

Utilizzo un kernel che compilo personalmente (si tratta di un vanilla + zen), senza immagine di init e con tutti i moduli statici eccetto ethernet, wlan e eeepc_laptop.
In particolare, eeepc_laptop impiega più di 10 secondi a caricarsi, quindi l’ho aggiunto a /usr/sbin/services.sh per farlo caricare in background.

Questo il services.sh attuale:


#!/bin/sh

#Starts udev events
/sbin/udevd --daemon &>/dev/null &
/sbin/udevadm trigger &>/dev/null &
/sbin/udevadm settle &>/dev/null &

#Make swap (not for ssd)
/sbin/swapon -a &

#Starting background daemons
/etc/rc.d/syslog-ng start &>/dev/null &
(/etc/rc.d/hal start && /etc/rc.d/wicd start) &> /dev/null &
modprobe eeepc_laptop &
echo "24 17 15 15" > /sys/devices/system/cpu/cpu0/cpufreq/phc_vids &
echo "24 17 15 15" > /sys/devices/system/cpu/cpu1/cpufreq/phc_vids &

Il “5 seconds boot”

Negli ultimi due giorni mi sono interessato alla faccenda del famigerato boot in 5 secondi (quel famoso proof of concept uscito a settembre, per mano dell’altrettanto noto arjan… qualcuno ha detto powertop?)

Ovvero mi sono interessato a questo: http://lwn.net/SubscriberLink/299483/fa0208e48cf3eeac/

L’interesse è partito da un topic sul forum archlinux.it iniziato dal buon adriano (http://adrinux.wordpress.com/2008/12/04/boot-rapido-5-secondi-anche-su-archlinux/).

Per farla breve, fino ad adesso si è lavorato su questi due punti:

  • inclusione nel kernel -ARCH della patch fastboot, che riduce il tempo di avvio del kernel facendo alcune cose in modo asincrono
  • inclusione di sreadahead negli script di init di arch (rc.sysinit in particolare) e con esso anche l’integrazione della patch a ext3 per marcare i file utilizzati in fase di boot (è necessaria una root in ext3)

A giudicare dai grafici bootchart di adriano fatti su una macchina reale (io per ora sto lavorando su una macchina virtuale), sreadahead fa il suo dovere.

Il tempo di boot però non pare ridursi così tanto, anzi si notano ancora delle pause indesiderate (in particolare nella fase finale, guardate nel topic del forum i grafici).

C’è dell’altro da fare con gli script di init, quasi sicuramente.

Aggiornamenti a seguire.