Den Linux-Kernel schneller booten
Zusammenfassung
Feng Tang zeigt Messmethoden und Parallelisierungen, die den Kernelstart einer virtuellen Plattform von drei Sekunden auf 300 Millisekunden verkürzten.
Ideen
- Asynchrones Treiber-Probing parallelisiert unabhängige Geräteinitialisierung.
- Verzögerte Speicherinitialisierung verkürzt den kritischen Startpfad.
- Ein schneller Root-Mount verlangt abgestimmte Speicher- und Dateisystemtreiber.
- Kleinere Kernelkonfigurationen vermeiden unnötige Initialisierungsarbeit.
Einsichten
- Bootoptimierung beginnt mit einer belastbaren Zeitachse statt gefühlter Verzögerung.
- Parallelisierung verschiebt Abhängigkeiten und kann Gerätenamen unerwartet verändern.
- Universelle Kernelkonfigurationen tauschen Startzeit gegen breite Hardwareunterstützung.
Fakten
- Die Präsentation stammt von der Linux Plumbers Conference 2019.
- Die gemessene Kernelzeit sank von 3000 auf 300 Millisekunden.
- Die Plattform lief innerhalb einer virtuellen Maschine.
Empfehlungen
- Erzeuge vor Optimierungen eine Bootzeitachse mit wiederholbaren Messungen.
- Prüfe nach Parallelisierung Reihenfolgeannahmen in Diensten und Gerätenamen.
Referenzen
Der Link zur Originalquelle öffnet einen neuen Tab.