Login
Login-Name Passwort


 
Newsletter
Werbung

Mo, 13. Mai 2013, 08:28

Software::Kernel

Linux-Kernel 3.10 tritt in die Testphase ein

Linux-Initiator Linus Torvalds hat die Kernel-Version 3.10-rc1 als erste Testversion für Linux 3.10 freigegeben.

Linus Torvalds, Initiator des Linux-Kernels

Linux Foundation

Linus Torvalds, Initiator des Linux-Kernels

Zwei Wochen nach Linux 3.9 liegt nun die erste Testversion von Linux 3.10 vor. In nur knapp zehn Wochen lieferten die Entwickler dieses Mal über 12.700 Änderungen ab, was in der Geschichte von Linux wahrscheinlich einen neuen Rekord darstellt. Ob auch bezüglich der Größe der Änderungen ein neuer Rekord erzielt wurde, hat Linus Torvalds laut seiner Ankündigung nicht geprüft. Nachdem schon Linux 3.8 eine neue Rekordzahl von Änderungen gebracht hatte und Linux 3.9 kaum weniger, scheint es, als ob Linux immer noch mehr Fahrt aufnehmen würde.

Änderungen gab es in allen Teilen des Kernels, die bedeutendste ist jedoch wohl die Möglichkeit, die Anzahl der Timer-Interrupts drastisch zu reduzieren. Diese Änderung nennt sich »Full Dynticks« und reduziert im Wesentlichen den Timer-Interrupt, der (je nach Konfiguration) meist 100 bis 1.000 Mal pro Sekunde ausgelöst wird, unter bestimmten Bedingungen auf nur noch einmal pro Sekunde. Diese Bedingungen stellen derzeit noch recht starke Einschränkungen dar, dürften aber im Lauf der Zeit weitgehend entfallen. Die erste Bedingung ist, dass weiterhin mindestens die Boot-CPU mit vollständigen Timer-Interrupts laufen muss. Außerdem kann auf die Interrupts in einer CPU nur dann verzichtet werden, wenn genau ein Prozess für diese CPU lauffähig ist. Dennoch ist die neue Funktionalität eine Verbesserung gegenüber dem bisherigen Verfahren, Timer-Interrupts einzusparen, da bisher die Interrupts für eine CPU nur abgeschaltet werden konnten, wenn diese unbeschäftigt war. Das hat direkte Auswirkungen auf den Energieverbrauch bei Geräten mit mehreren Prozessorkernen.

Die ftrace-Funktionalität wurde stark erweitert, unter anderem stehen jetzt mehrere Puffer zur Verfügung, die mit spezifischen Ereignissen gefüllt werden können. Control Groups sind jetzt unter anderem für Geräte und perf_events vollständig hierarchisch. Anwendungen in Control Groups können Benachrichtigungen erhalten, wenn nur noch wenig Speicher zur Verfügung steht, und dann möglicherweise einen Teil ihres Speichers ans System zurückgeben. Der Grund, warum sie das tun sollten, ist der Selbsterhaltungstrieb, um nicht vom Kernel terminiert zu werden, falls die Speicherknappheit kritisch werden sollte. Das Perf-Subsystem kann nun Profile des Speicherzugriffs erstellen.

Das iSCSI-Subsystem unterstützt jetzt das Protokoll iSer (iSCSI extensions for RDMA). Die Möglichkeit, Skripte auszuführen (wobei der Interpreter mittels #! in der ersten Zeile angegeben werden kann), kann jetzt als Kernel-Modul compiliert oder ganz weggelassen werden.

Der neue tail loss probe-Algorithmus im TCP-Subsystem soll einer Verbindung, die Pakete verloren hat, schneller wieder zu maximaler Geschwindigkeit verhelfen. Entfernt wurden dagegen die nie komplettierten Cookie Transactions, deren Aktivierung die Geschwindigkeit beeinträchtigte. Das IPv6-Protokoll kann nun auch über IEEE 1394 (Firewire) übertragen werden.

Das Dateisystem XFS wurde um Prüfsummen und Identifikationsdaten für Metadatenblöcke erweitert, was Konsistenzprüfungen und Reparaturen erleichtern soll. Ceph hingegen wurde um RBD-Ebenen erweitert, was die schnelle Erzeugung von Copy-on-Write-Klons von Dateisystem-Schnappschüssen ermöglichen soll. Der neue bcache kann einen schnellen Massenspeicher (z.B. eine SSD) als Cache für einen langsameren einsetzen. Im Dateisystem btrfs wurde eine optimierte, deutlich kleinere Repräsentation von Extents implementiert. Sie ist mit der bestehenden nicht kompatibel, doch können bestehende Dateisysteme konvertiert werden.

Eine Optimierung bei den Reader/Writer-Semaphoren führt zu einer Beschleunigung, die in Benchmarks wie pgbench in einzelnen Punkten die Geschwindigkeit verdoppeln soll. In der ARM-Architektur wurden mehrere Plattformen mit Multiplattform-Unterstützung versehen. Dies stellt einen weiteren Schritt auf dem Weg dar, einen Großteil der unterschiedlichen ARM-Systeme mit einem einzigen Kernel booten zu können. Außerdem wurde ein Multi-Cluster Power Management hinzugefügt, das den Energieverbrauch bei big.LITTLE-Architekturen optimieren soll. Die MIPS-Architektur unterstützt jetzt den Hypervisor KVM und kann zudem mit dem neuen Befehlssatz »microMIPS« compiliert werden, der deutlich kürzeren Code ergibt.

Zahlreiche Treiber wurden aktualisiert, erweitert oder kamen neu hinzu. Die zahlreichen weiteren Änderungen sind im Änderungslog von Git zu finden. Kernel und Patch-Dateien sind von zahlreichen Spiegelservern von kernel.org herunterzuladen.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung