Login
Login-Name Passwort


 
Newsletter
Werbung

Mo, 1. Juli 2013, 07:59

Software::Kernel

Linux-Kernel 3.10 freigegeben

Linux-Initiator Linus Torvalds hat Version 3.10 des Linux-Kernels freigegeben. Die Option, Timer-Ticks unter bestimmten Bedingungen zu eliminieren, soll ebenso wie zahlreiche weitere Änderungen den Energieverbrauch und die Geschwindigkeit optimieren.

Linus Torvalds, Initiator des Linux-Kernels

Linux Foundation

Linus Torvalds, Initiator des Linux-Kernels

Gut zwei Monate nach Linux 3.9 ist nun Linux 3.10 fertiggestellt. Obwohl der Entwicklungszyklus mit neun Wochen einer der kürzeren war, stellt Linux 3.10 mit 13.500 Änderungen einen neuen Rekord auf und übertrifft Kernel 3.8 noch deutlich. 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.

Laut Linus Torvalds bringt Linux 3.10 Änderungen in allen Teilen des Kernels, worunter zwei Drittel Treiber-Änderungen sind. Die bedeutendste Änderung ist 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-Klonen 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.

Darüber hinaus wurden zahlreiche Treiber aktualisiert, erweitert oder kamen neu hinzu, was den größten Teil aller Änderungen ausmacht. Eine Liste aller Änderungen kann man dem Git-Repositorium entnehmen. Die Seite Kernelnewbies.org wird in Kürze eine übersichtliche Zusammenfassung der Änderungen veröffentlichen. Die aktuelle Version von Linux kann von kernel.org und zahlreichen Spiegel-Servern in Form von Patches oder tar-Paketen heruntergeladen werden.

Werbung
Kommentare (Insgesamt: 2 || Alle anzeigen || Kommentieren )
Re: Counterstrike? (1234, Di, 2. Juli 2013)
Counterstrike? (Clanspieler, Mo, 1. Juli 2013)
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung