Login
Newsletter
Werbung

Mo, 19. März 2012, 11:18

Software::Kernel

Linux-Kernel 3.3 freigegeben

Linux-Initiator Linus Torvalds hat Version 3.3 des Linux-Kernels freigegeben. Eine Reihe von Android-Subsystemen wurden integriert, so dass der Unterschied zum Android-Kernel verringert wurde.

Linus Torvalds, Initiator des Linux-Kernels

Linux Foundation

Linus Torvalds, Initiator des Linux-Kernels

Trotz wiederum sehr zahlreicher Änderungen ist der Patch von Linux 3.2 zu 3.3 etwas kleiner als bei den vorigen Versionen. Rund 60% der Änderungen entfallen nach Angaben von Torvalds auf die Treiber, das ist weniger als üblich. 20% betreffen Änderungen in den Architekturen und 20% den Rest.

Linux 3.3 bringt einige Subsysteme in den Kernel, die von Google für Android entworfen wurden. Noch ist nicht alles von Android übernommen, aber einiges wird in der vorliegenden Form auch nicht in den Kernel gelangen. Es ist allerdings denkbar, dass sich die Entwickler auf gemeinsame Funktionalität einigen, die die verbleibenden Unterschiede zum Android-Kernel weiter verkleinert.

Das Dateisystem btrfs kann nun Daten im laufenden Betrieb neu verteilen, was beispielsweise genutzt wird, wenn eine zusätzliche Festplatte hinzukommt oder der RAID-Modus geändert wird. Auch in ext4 gab es eine Verbesserung. Das Ändern der Dateisystemgröße im laufenden Betrieb läuft nun komplett im Kernel und wird dadurch leistungsfähiger und schneller.

Viele Erweiterungen wurden an der Netzwerk-Funktionalität vorgenommen. So kam der »Team«-Treiber hinzu, der einen schlanken Mechanismus zum Kombinieren mehrerer Netzwerkschnittstellen (Bonding) bereitstellt. Control Groups können nun für den Zugriff auf die Netzwerkschnittstellen priorisiert werden. Der neue TCP Buffer Size Controller kann genutzt werden, um den Speicher zu begrenzen, der für TCP-Puffer verwendet wird. Eine weitere Begrenzung kann mit den Byte Queue Limits gesetzt werden. Sie regelt, wieviele Bytes maximal in der Sendewarteschlange einer Netzwerkschnittstelle Platz finden. Darüber hinaus kam noch der virtuelle Netzwerk-Switch Open vSwitch hinzu, und die Netzwerkschicht verwendet den Algorithmus »Adaptive RED« für die Warteschlangenverwaltung.

Einige 32-Bit-ARM-Prozessoren besitzen inzwischen eine Adresserweiterung, um mehr als 4 GB Speicher adressieren zu können, ähnlich wie x86-Prozessoren. Diese kann jetzt auch unter Linux genutzt werden. 64-Bit-ARM-Prozessoren sind noch nicht auf dem Markt, so dass, besonders für die kommenden ARM-basierten Server, entsprechender Bedarf besteht. Nach der Hexagon-Architektur in Linux 3.2 kam nun auch die recht ähnliche C6X-Architektur hinzu. Bei beiden handelt es sich um digitale Signalprozessoren (DSPs), die in einigen ARM-Chips als Koprozessoren eingebaut sind. Dadurch befinden sich zwei unterschiedliche Architekturen auf einem Chip, die nun beide in der Lage sind, Linux auszuführen. Dafür sind zwei separate Kernel nötig, die über gemeinsamen Speicher kommunizieren können. Einige Entwickler haben bereits die virtio-Treiber, die eigentlich ja zur Beschleunigung der Ein/Ausgabe in virtuellen Maschinen gedacht waren, für die Kommunikation der beiden Kernel verwendet.

Das Booten ist nun auch über EFI möglich. Es wird eine Art Loader gebootet, der den Kernel als EFI-Applikation laden kann. Dabei wurde keine Änderung am Kernel-Image vorgenommen, so dass das Booten mit herkömmlichen BIOS-Methoden mit dem gleichen Image möglich ist. Das /proc-Dateisystem informiert jetzt mit der Datei map_files für jeden Prozess über alle dateibasierten Speichermappings. Diese wird später einmal für Checkpoints im Kernel benötigt. Außerdem erhielt /proc neue Mount-Optionen, die Informationen über Prozesse, die nicht dem anfragenden Benutzer gehören, ganz oder teilweise verbergen können.

Der Kernel kann nun RSA-Signaturen verifizieren, was vom Extended Verification Module (EVM) benötigt wird. Der ALSA-Kern kann mit komprimierten Audiodaten umgehen, wenn das Gerät es unterstützt. Das neue »Charger Manager«-Subsystem ermöglicht es, den Ladezustand von Akkus zu überwachen, selbst wenn das System im Schlafzustand ist. Dazu wacht es periodisch teilweise auf, um den Akku abzufragen.

Die Speicher-Control-Group wurde optimiert und benötigt nun selbst viel weniger Speicher. Auch die Speicherverwaltung wurde generell weiter optimiert. Ein Target-Treiber für das SCSI-RDMA-Protokoll wurde hinzugefügt. Darüber hinaus gab es zahlreiche neue Treiber sowie Verbesserungen an Treibern und vielen anderen Kernel-Komponenten.

Eine Liste aller Änderungen kann man dem Git-Repositorium entnehmen; auf dem FTP-Server wird die Liste offenbar nicht mehr regelmäßig abgelegt. Die Seite Kernelnewbies.org hat eine übersichtliche Zusammenfassung der Änderungen veröffentlicht. Die aktuelle Version von Linux kann von kernel.org und zahlreichen Spiegel-Servern in Form von Patches oder tar-Paketen heruntergeladen werden.

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