Stark reduzierte Timer-Interupts

Kernel 3.10 mit erneutem Rekord bei Änderungen

Nach nur neun Wochen Entwicklungszeit hat Linus Torvalds Kernel 3.10 freigegeben. Trotz der relativ kurzen Zeit stellt auch dieser Kernel, wie schon 3.8 und 3.9, mit 13.500 Änderungen einen neuen Rekord auf. Wie üblich macht der Anteil der Treiber auch bei dieser Veröffentlichung wieder zwei Drittel aus, der Rest sind Updates.

Die herausragendste Neuerung im Kernel 3.10 ist die Einführung von Full-Dynticks, womit die Timer-Interupts unter bestimmten Umständen von üblichen 100 bis 1.000 Mal auf nur ein Mal pro Sekunde reduziert werden können. Dazu muss zumindest ein CPU-Kern mit vollständigen Timer-Interrupts weiterlaufen. Bisher konnten Timer-Interrupts nur auf Kernen abgeschaltet werden, die im Ruhezustand verharrten. Die Bedingungen für die Reduzierung von Dynticks wird sich über die nächsten Ausgaben des Kernels vermutlich noch stark verändern, wenn mehr Erfahrungswerte vorliegen. Für Geräte mit mehreren Kernen bedeutet diese neue Technik direkte Einsparungen beim Energieverbrauch.

Eine weitere Neuerung betrifft Solid State Drives als Cache im Zusammenspiel mit einer herkömmlichen Festplatte. Dafür sorgt in Zukunft bcache, indem es sich zwischen den Kernel und die Festplatte schaltet, um I/O-Operationen von und zu der HDD abzufangen und mittels der SSD zu beschleunigen. Im Dateisystem Btrfs wurde eine optimierte, um rund ein Drittel kleinere Darstellung von Extents implementiert, was den Extent-Tree um ebenfalls um ein Drittel verkleinert und größere Copy-on-Write-Aktionen deutlich beschleunigen soll. Bestehende Dateisysteme müssen zur Nutzung des neuen Schlüssel-Typs konvertiert werden. Das Dateisystem XFS wurde um die experimentelle Implementation von CRC32c-Checksummen für Metadaten ergänzt. Die Storage-Plattform Ceph bekam RDB-Layering als Erweiterung spendiert. Dies erlaubt das schnellere Erstellen von Copy-on-Write-Klonen als Schnappschuss und deren Kopieren in eine andere Instanz.

Die zahlreichen Änderungen und Ergänzungen bei den Treibern können detailliert nachgelesen werden. Alle Änderungen des Kernel 3.10 sind in verständlicher Weise auf der Webseite von Kernelnewbies aufgeführt.