Über unsMediaKontaktImpressum
10. Juni 2014

Linux-Kernel 3.15 freigegeben

Weniger als 10 Wochen nach Linux 3.14 ist nun die nächste Version verfügbar. Linus Torvalds gab den neuen Kernel jetzt am Pfingstwochenende frei. Mit mehr als 12.000 Neuerungen gegenüber dem Vorläufer kann der Linux-Kernel 3.15 aufwarten.

Quantitativ ist dies noch kein Rekord, aber qualitativ. SATA-Systeme sind nun wesentlich schneller aus dem Ruhezustand heraus verfügbar. Optimiert wurde der per ACPI gesteuerte Ruhezustand „Suspend-to-RAM“ (S3): Er stellt die Mehrzahl der Komponenten eines Rechners auf stromlos – mit Ausnahme des Hauptspeichers. Zum Hochfahren aus diesem Zustand werden die SATA-Controller nun asynchron zum Rest des Systems aufgeweckt, sodass nicht auf die Controller gewartet werden muss. Denn letztere benötigen oft bis zu 10 oder mehr Sekunden für die Bereitstellung der Festplatten, der Rest des Systems ist meist wesentlich schneller aktiviert. Das asynchrone Verfahren kann das Anstarten nun teilweise auf unter eine Sekunde reduzieren. In dieser Phase werden Festplattenzugriffe gepuffert.

Das neue Release bietet zudem einige Neuigkeiten bei Treibern. Der Radeon-Treiber unterstützt jetzt auch die von AMD im April veröffentlichten Mullins APUs für Tablets. Die Chips RTL8723BE und RTL8187SE werden jetzt durch WLAN-Treiber unterstützt. USB-WLAN-Chip Realtek RTL8723AU wird durch die Version im experimentellen Staging-Bereich supportet. Mit Kernel 3.16 könnte dieser Treiber in den stabilen Teil des Kerns übernommen werden.

Der Kernel enthält weiterhin einige Funktionen zur Optimierung mit Clang. Die endgültige Implementierung ist mit 3.16 geplant. Der Kernel kann dann voraussichtlich mit Clang erstellt werden. Clang soll dabei helfen können, Fehler zu finden. Verbesserungen in der Ausführungsgeschwindigkeit sind jedoch nicht zu erwarten. Vergleiche zwischen GCC und Clang zeigen, dass je nach System mal der eine und mal der andere den besseren Code erzeugt.

Für USB 3.0 gibt es ebenfalls Optimierungen. Der Treiber USB Attached SCSI (UAS) wurde wegen Problemen zeitweise gesperrt; jetzt ist er wieder freigegeben. Der Berkeley Paketfilter wurde grundlegend überarbeitet. Er dient als Schnittstelle und Filter zur Sicherungsschicht des OSI-Modells.

In letzter Minute wurde noch eine Änderung integriert, die einen Stack Overflow unter Linux verhindern soll: Auf 64 Bit-Systemen mit x86-Architektur wird nun für jeden Prozess ein Stack von 16 KB statt wie bisher 8 KB bereitgestellt. Verschachtelte Funktionsaufrufe sollen so keine Überläufe mehr produzieren. Dafür ist der Speicherbedarf pro Prozess erhöht - ein Nachteil, der bei der heutigen Ausstattung von Rechnern meist verkraftbar sein dürfte.

POSIX-Sperren können jetzt dateispezifisch gesetzt werden. Dies beseitigt Probleme bei Dateien, die mit mehreren File-Deskriptoren geöffnet wurden. Der Befehl renameat2 ermöglicht es, zwei Dateien in einer atomaren Operation zu vertauschen. Im Hintergrund wechseln beide Dateien tatsächlich nur den Dateinamen.

Der ZRAM-Treiber komprimiert Swap-Pages im RAM und kann nun den LZ4-Algorithmus verwenden. In der Speicherverwaltung wird außerdem mit dem neuen Kern versucht, das Auslagern von Seiten zu vermeiden, falls diese wahrscheinlich kurz danach wieder benötigt werden. Thread-spezifisches VMA-Caching soll die Geschwindigkeit steigern.

Die Dateisysteme ext4 und XFS arbeiten mit neuen Operationen: FALLOC_FL_ZERO_RANGE und FALLOC_FL_COLLAPSE_RANGE. XFS besitzt jetzt zudem das Flag O_TMPFILE. Writeback-Caching kann nun im FUSE-Subsystem verwendet werden.

Eine Übersicht der Änderungen gibt es auf Kernel Newbies. Der Sourcecode zum neuen Kernel ist auf den Servern von Kernel.org verfügbar.