Original-URL des Artikels: https://www.golem.de/1103/80935.html    Veröffentlicht: 15.03.2011 07:51    Kurz-URL: https://glm.io/80935

Linux 2.6.38

Neuer Kernel mit Desktop- und VFS-Beschleunigung

Linus Torvalds schwärmt von zwei wichtigen Patches im Linux-Kernel 2.6.38: Sie sollen den Desktop und die Zugriffe auf Dateisysteme beschleunigen. Das Direct Rendering Modul (DRM) erhält präzisere Zeitstempel, um Bildfehler zu vermeiden.

Zwei neue Patches sollen den Kernel im Zusammenspiel mit Desktops und Dateisystemen deutlich beschleunigen. Zudem wurden aus dem UDF-Treiber die letzten Big Locks entfernt, die noch in der Dateisystem-Infrastruktur vorhanden waren. Die Dateisysteme Ext3 und XFS verwenden die Batch-Discard-Funktion für SSDs. Die Kernel-Hacker benötigten insgesamt 69 Tage für die Entwicklung von Kernel 2.6.38.

Desktopbeschleunigung

Torvalds hebt zwei Patches besonders hervor und erklärte sie zu seinen Lieblingsfunktionen: Der eine Patch soll die Arbeit am Desktop beschleunigen. Dabei werden Prozesse bestimmter Anwendungen, etwa die von Systemdiensten (Daemons) sowie echten oder Pseudo-Terminals vom Kernel, automatisch in einer Gruppe (Cgroup) zusammengefasst, um die CPU-Zeit besser zwischen Desktop und Konsolenanwendungen zu verteilen.

Ferner übernimmt im neuen Kernel das RCU-Framework die Namenssuche von Dateipfaden (RCU-based name lookup). Bisher musste der Kernel dabei Sperren setzen, die künftig wegfallen. Der Patch soll für einen Geschwindigkeitszuwachs von 30 bis 50 Prozent sorgen. Selbst Systeme mit nur einer CPU sollen von der neuen Funktion profitieren. Der Patch wurde in der Virtual-Filesystem-Infrastruktur eingepflegt und steht damit allen Dateisystemen zur Verfügung.

Neue Grafiktreiber

Die Kernel-Version bringt auch zahlreiche neue Grafiktreiber mit. Die Nouveau-Treiber für Grafikkarten mit Nvidia-Chipsatz sollen die Unterstützung für GPUs der Fermi-Reihe mitbringen. Bislang fehlte in den Treibern die 2D- und 3D-Xvideo-Beschleunigung, sie wurde in dieser Version implementiert. Allerdings benötigt der Treiber weiterhin proprietäre Firmware, um die Beschleunigung zu verwenden. Die entsprechenden Libdrm- und X.org-Pakete werden bereits in Ubuntu 11.04 enthalten sein, dessen Erscheinungstermin für den 28. April 2011 festgelegt wurde. Ubuntu 11.04 wird auch den Kernel 2.6.38 enthalten und dürfte die erste große Distribution mit dem neuen Kernel sein.

Für seine Ontario- und Zacate-APUs der Fusion-Reihe hatte AMD bereits im November 2010 quelloffene Treiber veröffentlicht, die jetzt in den offiziellen Entwicklungszweig des Kernels eingebaut wurden. Auch AMD-GPUs der Serie Radeon HD 6800 mit Codenamen Northern Island werden ab Kernel 2.6.38 unterstützt. Dazu wurde der von AMD bereitgestellte Treibercode übernommen. Damit sollen Grafikkarten bis zur 6800er Reihe von AMD mit dem nächsten Kernel laufen. Der entsprechende X.org-Treiber ist ebenfalls bereits verfügbar.

Intel-Treiber sparen Strom

Für Grafikchips und Prozessoren von Intel haben die Entwickler weitere Stromsparfunktionen integriert oder reaktiviert: Für CPUs der Ironlake-Reihe wurde der Self-Refresh-Patch wieder aktiviert, während er für die Sandy-Bridge-Reihe eingepflegt wurde. Laut Entwickler Jesse Barnes verbrauchte sein Laptop mit Ironlake-Chipsatz nach Einpflegen des Patches 0,5 Watt weniger Leistung als zuvor. Zudem erhält der Sandy-Bridge-Treiber Framebuffer-Kompression.

Mit präziseren Zeitstempeln, die unter dem Namen Precision Vblank Timestamps laufen, kann mikrosekundengenau registriert werden, wann ein neues Bild ausgegeben wird. Damit macht die Direct-Rendering-Manager-Infrastruktur einen weiteren Schritt hin zur Konformität mit der Open Media Library. Die Zeitstempel sollen die Synchronisation von Bild und Ton verfeinern und stehen nicht nur für die Videowiedergabe zur Verfügung, sondern verbessern auch die Darstellung von Desktopeffekten. Außerdem sollen die präziseren Zeitstempel Bildstörungen minimieren, etwa Flackern.

Besser vernetzt

Die Broadcom-Treiber-Reihe b43 wurde weiter verbessert und einige von den unterstützten Chipsätzen freigeschaltet. Sie waren in der letzten Kernel-Version noch als funktionsuntüchtig eingestuft worden. Auch etliche Ralink-Treiber der Rt30xx-Serie, die sowohl in USB-Geräten als auch in PCIe-Karten verbaut sind, wurden von den Kernel-Entwicklern als reif eingestuft. Neu hinzugekommen sind beispielsweise WLAN-Chips der 6000er Serie von Intel. Realtek hat Code für seine WLAN-Chipsätze RTL8188CE und RTL8192CE beigesteuert. Der Chip mit dem Namen AR9485 von Atheros wird nun ebenfalls unterstützt.

Der Google-Entwickler Tom Herbert hat analog zu seinen bereits in Kernel 2.6.35 eingereichten RFS-Patches zur Verbesserung des Datendurchsatzes für Netzwerkkarten nun auch das Versenden von Daten beschleunigt. Der XPS-Patch (Transmit Packet Steering) verteilt die Datenlast wie bei den RFS-Patches besser auf mehrere CPU-Kerne.

XFS und Ext3 für SSDs

Die seit der vorangegangenen Linux-Version 2.6.37 vorhandene Batch-Discard-Funktion für SSD-Geräte steht jetzt auch für die Dateisysteme XFS und Ext3 zur Verfügung. Entwickler Christoph Hellwig weist darauf hin, dass die Funktion im Normalbetrieb die Leistung des XFS-Dateisystems reduziert. Btrfs behält weiterhin seinen experimentellen Status und kann zusätzlich per LZO komprimieren statt wie bisher nur über Zlib. Zudem können schreibgeschützte Abbilder erstellt werden.

UDF kommt nun als letztes Dateisystem ohne große Kernel-Sperren aus. Damit fällt eine der letzten Implementierungen des Big Kernel Lock weg, die zum Großteil bereits im letzten Kernel entfernt wurde. Das komprimierte Dateisystem Squashfs kann nun offiziell kernelgestützt mit XZ - vormals LZMA - komprimieren und somit ein wenig mehr Platz auf CD- oder DVD-Images freischaufeln. Der Patch wird allerdings von vielen Distributionen bereits seit längerem verwendet, etwa bei den Ubuntu-CD-Images.

Der Device-Mapper, der für den Zugriff auf zahlreiche Onboard-RAID-Chipsätze verantwortlich ist, wurde erneuert und kann über eine neue Schnittstelle mit dem Software-RAID-System des Kernels (MD, Multiple Devices) kommunizieren. Damit können die RAID-4-, -5- und -6-Treiber aus dem MD-Subsystem mit Device Mapper genutzt werden. Zudem kann der Device-Mapper auf RAID-1-Konfigurationen Discard-Informationen an das Dateisystem weiterleiten. Für die Verschlüsselung verwendet das Modul Dmcrypt die Multicore-Fähigkeiten moderner CPUs. Neue Treiber für die Chipsätze Dove SDHCI von Marvell und 388 SD/MMC von Jmicron haben die Entwickler ebenfalls integriert.

Xen erweitert, aber noch nicht funktional

Nachdem im letzten Kernel die Xen-Dom0 integriert wurde, bleibt die Virtualisierung auch in der neuen Kernel-Version noch weitgehend unbrauchbar. Bislang wurde lediglich die Infrastruktur um einige Basisfunktionen erweitert. Zumindest der sogenannte "Userspace Grant Access Device Driver" erlaubt ab Kernel 2.6.38 das Teilen von Speicherseiten zwischen Xen-Clients.

Mit der Einführung der Transparent Huge Pages (THP) soll die Speicherverwaltung deutlich verbessert werden und vor allem der Virtualisierung zugutekommen. Ein ausführlicher Artikel von Kernel-Entwickler Johnathan Corbet schildert die Vorteile der THPs gegenüber den bislang verwendeten Large Memory Pages (HugeTLB). Die Virtualisierungsinfrastruktur KVM kann ebenfalls auf die THPs zugreifen.

Mehr Treiber

Der aktuelle Kernel hat jetzt Soundtreiber für die Macbook-Air-Reihe. Zudem wurden der USB-Audio-Treiber für Creatives X-Fi S51 und der SD-90 von Edirol erweitert. Der Alsa-Mixer funktioniert inzwischen auch mit Audiokarten mit ALC887-Onboard-Chipsatz von Realtek. Außerdem haben die Entwickler die Schwachstelle im Treiber snd-usb-caiaq beseitigt, über die Schadcode eingeschleust werden konnte. Der HD-Audio-Nachbau von VMware wird von Kernel 2.6.38 unterstützt.

Im Video4Linux-Subsystem haben die Entwickler zahlreiche, nicht mehr gepflegte Treiber und den Kompatibilitätsmodus für V4L1 entfernt. Anwendungen, die auf die erste Generation der Video4Linux-Infrastruktur zugreifen müssen, steht stattdessen die Bibliothek Libv4l1 zur Verfügung. Hinzugekommen sind Treiber für Terratecs Cinergy Hybrid T USB XS, GoTView PCI DVD3 Hybrid und Compro Videomate Vista M1F.

Der USB-Stack wurde ebenfalls um neue Treiber erweitert, darunter für VIAs VT8500, den Host-Controller von MSM und für die Chipsätze PXA9xx/PXA168 von Marvell. Für den externen USB-Webmail-Notifier von Dream Cheeky haben die Entwickler ebenfalls einen Treiber beigelegt.

Mehr Sicherheit

Künftig verwendet der Linux-Kernel die NX-Funktion (No Execute) der CPUs, um Kernel-Dateien und -Module abzusichern. Der Patch wurde ursprünglich schon für Kernel 2.6.30 eingereicht und sollte dort auch den Speicher absichern. Allerdings verursachte er Abstürze auf einigen Systemen und wurde beiseite gelegt. Erst die überarbeitete Speicherverwaltung im neuen Kernel beseitigte die Absturzursache, so dass der Patch nun verwendet werden kann.

Ein weiterer Patch integriert das ACPI Platform Interface (APEI). Die Kernel-Entwickler hatten sich die Integration des Frameworks gewünscht, das etliche ACPI-Fehler über Dmesg ausgibt.

Die Änderungen am neuen Kernel können über Git-Web durchsucht und eingesehen werden. Der Quellcode steht unter kernel.org zum Download zur Verfügung.  (jt)


Verwandte Artikel:
Linux-Kernel: Torvalds schließt Merge-Fenster für 2.6.38   
(19.01.2011, https://glm.io/80807 )
Google: Chromebooks bekommen "Linux-VMs" und "Terminal"   
(27.02.2018, https://glm.io/133030 )
Linux: Neue Grafikmodule für Kernel 2.6.38   
(13.01.2011, https://glm.io/80708 )
Zacate und Ontario: AMD stellte Fusion-CPUs vor   
(04.01.2011, https://glm.io/80441 )
Virtualisierung: Microsoft will einfach nutzbare Ubuntu-Gäste für Hyper-V   
(01.03.2018, https://glm.io/133082 )

© 1997–2019 Golem.de, https://www.golem.de/