Wer hat an der Uhr gedreht? Trotz schnellerer Prozessoren gewinnen immer mehr Anwender den Eindruck, dass sich das Booten verlängert, statt sich zu verkürzen.
Michael Larabel von Phoronix hat einmal bei Ubuntu nachgemessen und festgestellt, dass nach Jahren der Verbesserung Ubuntu 8.04 wieder rund 10 Prozent länger brauchte als die Vorgängerversion [1]. Grund genug für Ubuntu-Chef Shuttleworth, Bootgeschwindigkeit auf die Agenda der Release 9.04 zu setzen [2]. Auf dem Ubuntu Developer Summit gingen die Entwickler das Thema auch strategisch an und teilten das Problem in zwei Teile: Userland und Kernel.
Was dauert hier so lange?
Wesentlich für die Zeitspanne, bis der Kernel den Init-Prozess startet, sind die einkompilierten Treiber und Subysteme. Wer hier eine knappe Auswahl trifft, beschleunigt. Das ist ganz besonders wichtig für Anbieter mobiler Geräte. Von einem Desktop-PC sind Anwender Startzeiten von einigen Minuten gewohnt. Vom Telefon hingegen fordern sie Betriebsbereitschaft binnen Sekunden. Diesen Wunsch hat Intel mit seinem Moblin-Projekt aufgegriffen.
Bereits beim Linux Kernel Summit rissen die Entwickler Arjan van de Ven und Auke Kok die Marke von 5 Sekunden beim Booten [3]. Von dieser Zeitspanne gestanden sie dem Kernel nur eine einzige Sekunde zu. Mit der richtigen Vorbereitung sei sogar weniger als eine halbe Sekunde drin sein, machte van der Ven Hoffnung: Dazu müsse man den Kernel ohne Initrd bauen und eine Auswahl der Module treffen. Mit rund zehn Modulen könne man 95 Prozent aller aktuellen Laptops abdecken. Außerdem erwartet er sich einiges vom verbesserten ACPI-Support späterer Kernel.
Im Userland
Ist der Kernel gestartet, gilt es die Userland-Tools schnellstmöglich zu aktivieren. Einen Beitrag dazu liefert Readahead [4], das ursprünglich von Fedora stammt. Die Intel-Entwickler planen es für Moblin zu Sreadahed weiterzuentwickeln, wollen aber das Prinzip beibehalten: In einem Lernschritt zeichnet Linux ein Profil auf, welche Dateien und Blöcke es benötigt und liest sie bei zukünftigen Starts am Stück ein. Vielleicht kann Kompression das Verfahren noch beschleunigen, so wie Knoppix früher mit gepackten Images. Das ist die Schlussfolgerung davon, dass mehr CPU-Ressourcen zur Verfügung stehen als Disk-Durchsatz. Folglich beschleunigt auch eine Solid State Disk das Booten.
Wer selbst seinen Rechner für das kommende Jahr fit machen möchte, kommt an Bootchart nicht vorbei. Das Werkzeug klinkt sich als Init-Prozess ein und stoppt die Zeit jedes Prozesses. Die Werte bestätigen die langjährige Kritik am SysV-Init-System. Bislang wagt aber kaum eine Distribution, davon abzurücken – zu viele Pakete bauen darauf auf. Zwar verwenden Fedora und Ubuntu mittlerweile Upstart [5], nutzen es aber nicht nativ, um Prozesse zu parallelisieren. Init-NG [6] und Apples Launchd [7] wären Alternativen. Wem das nicht reicht, nutzt einfach Suspend oder Hibernate. Je nach Tiefe des Schlafes sind das valide Alternativen, um 2009 schneller an die Kommandozeile zu kommen. (N. Magnus)
| Infos |
|---|
| [1] Michael Larabel, “Measuring Ubuntu\’s Boot Performance”: [http://www.phoronix.com/scan.php?page=article&item=ubuntu_boot_perf]
[2] Kristian Kießling, “Erste Alpha des neuen Ubuntu”: [https://www.linux-magazin.de/news/jaunty_jackalope_erste_alpha_des_neuen_ubuntu] [3] Don Marti, “Booting Linux in five seconds”, LWN.net: [http://lwn.net/Articles/299483/] [4] Readahead: [http://dailypackage.fedorabook.com/index.php?/archives/59-Wednesday-Why-Readahead.html] [5] Upstart: [http://upstart.ubuntu.com] [6] Init-NG: [http://www.initng.org] [7] Launchd: [http://launchd.macosforge.org] |





