"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Neues vom Pinguin: Q4 2009

COLOSSUS 06.01.2010 22238 20
click to enlarge
Lange hat sich der Pinguin diesmal Zeit gelassen und viel hat sich getan. Linux 2.6.32 bringt tolle Neuerungen für Desktop-Nutzer, aber auch auf Betreiber ganzer Virtualisierungsfarmen hat man nicht vergessen.

kernel_136962.png
Linux 2.6.32 wurde am 3. Dezember durch Linus Torvalds freigegeben. Die Liste an Änderungen ist wie immer stattlich lang und auch diesmal sind vielversprechende neue Features dabei. Quer über alle Workloads, vom buntesten Multimedia-Desktop bis hin zum Headless-Monsterserver im 19-Zoll-Rack, soll der "Per backing device writeback"-Patch für mehr Durchsatz und weniger Wartezeiten beim Schreiben und Lesen von Daten sorgen. Dabei kommt ab sofort ein Kernel-Thread für jedes Speichermedium zum Einsatz, was sich vor allem positiv auf die Parallelisierbarkeit von Schreiboperationen auswirkt. In Benchmarks mit zwei Prozessorkernen und fünf SATA-Festplatten wurden demnach Leistungssteigerungen zwischen 8 und 40% gemessen, je nach Dateisystem und zu schreibenden Daten. Zwar wurde der neue Mechanismus explizit auf Geräte mit rotierenden Plattern optimiert, aber auch beim Schreiben auf SSDs kommt man auf etwa 20% höheren Durchsatz.

Der I/O-Scheduler "CFQ" (Completely Fair Queue), der vor allem bei Festplatten mit Zugriffszeiten im Millisekundenbereich seine Stärken ausspielen kann, bietet nun einen "Low Latency Mode". In diesem soll sich die Latenz bei Blockoperationen weniger stark auf die Responsivität des Systems auswirken. Auch optimiert hat man die Anzahl der im Block-Layer generierten Interrupts, was in manchen Benchmarks bis zu 40% weniger I/O-Wait zur Folge hat. Linux-md, der Software-RAID-Treiber des Kernels, verteilt verschiedenste für die RAID-Levels 5 und 6 benötigten Berechnungen nun auf mehrere CPU-Kerne.

Wer sich für Dateisysteme interessiert, kommt unter Linux derzeit und wohl auch in Zukunft nicht an btrfs vorbei. In nicht allzu ferner Zukunft soll es die altgediente ext2fs-Reihe (ext2, ext3 und ext4) als inoffizielles Standarddateisystem des Linux-Kernels ablösen. Die jüngsten Änderungen im Code von btrfs bringen Verbesserungen im Umgang mit zur Gänze gefüllten Dateisystemen, schnelleres Löschen von Snapshots und Subvolumes und wesentlich gesteigerte maximale Schreibgeschwindigkeiten von rund 1 GiB/s. Weiters unterstützt btrfs nun ATA T13 TRIM auf SSDs mit entsprechender Firmware direkt aus dem Dateisystem heraus.

Vor allem für Virtualisierungsfarmen ist "Kernel Samepage Merging" (KSM) eine interessante und vielversprechende Neuerung. KSM erlaubt es einem Prozess bei der Allokation von Speicher diesen als potenziell geteilt ("mergeable") zu markieren. Der KSM kernel daemon überprüft derart markierte Speicherbereiche in regelmäßigen Abständen auf Pages, die ident sind und folglich zusammengelegt werden können. Ändert einer der an diesem Bereich teilhabenden Prozesse diesen Speicherbereich, legt KSM eine eigenständige Kopie der betroffenen Pages an, die dann durch den verändernden Prozess exklusiv weitergenutzt werden. In Tests konnten die Entwickler von KSM immerhin 52 voll virtualisierte Windows-XP-Gastsysteme mit 1 GiB zugeteiltem RAM auf einem Host unterbringen, der selbst nur über 16 GiB Hauptspeicher verfügt. KSM ist dabei völlig transparent für die Anwendungen, die es nutzen und kann designbedingt sehr einfach in bestehende Anwendungen eingepflegt werden: Es reicht zur Laufzeit ein entsprechender Aufruf von madvise(2), und schon wird KSM wie beschrieben aktiv. Ganz ohne Nachteil ist dieser clevere Trick zum Speichersparen freilich nicht. Eine höhere CPU-Last muss man durch das periodische Scannen der markierten Speicherbereiche in Kauf nehmen.

KVM, die "Kernel Virtual Machine", ist auch diesmal mit einigen tollen neuen Features bedacht worden: ioeventfd sorgt für weniger Latenz bei I/O in Gastsystemen, und irqfd schiebt Gastsystemen, ganz nach Wunsch des Hosts, virtuelle Interrupt Requests unter. Geschraubt hat man außerdem an der Unterstützung sogenannter "Cross-Vendor Migrations", also dem Verschieben von Gastsystemen im laufenden Betrieb von einem Host mit Intel-CPU zu einem Host mit AMD-CPU und umgekehrt. Ebenfalls verbessert hat man die Performance von SMP in Gastsystemen, wobei KVM bis zu 255 CPUs in solchen unterstützt.

Desktop-User, besonders jene mit AMD/ATi- und Intel-Grafikkarten und -chips, dürfen sich auch die Hände reiben: Auf R600 und R700 GPUs (Radeon HD3xxx- und HD4xxx-Serien) unterstützt Linux mit entsprechend aktuellem Xorg-Server "Kernel Mode Setting" (KMS) und erstmals 3D-Beschleunigung mit freien Treibern. Dieser ist zwar noch als "experimentell" gekennzeichnet, funktioniert aber zumindest mit Compositing Desktops wie Compiz oder kwin (KDE4) schon zur vollsten Zufriedenheit vieler Anwender. Auch TV-Out-Unterstützung reift langsam, aber sicher heran. Unter der Haube gibt es nun einen "Command Stream Checker" für alte Radeon-Karten (vor der Radeon 8xxx-Serie), der für die Befindlichkeit dieser GPUs eventuell schädliche Codesequenzen vorsorglich aussortiert. Ebenfalls unterstützen die aktualisierten Treiber nun Message Signaled Interrupts.

Auch bei Intel steht die Entwicklung nicht still und so bringt Framebuffer Compression eine Einsparung von ungefähr 0.5 Watt im Betrieb mit einem Intel-IGP. Wenn zwischendurch einmal weniger zu tun ist, takten Intel-GPUs sich nun vollautomatisch niedriger, und helfen so ebenfalls beim Stromsparen. Für G965 und höher gibt es nun einen Hangcheck-Timer, der abgestürzte GPUs wieder in einen definierten Zustand zurücksetzen kann. Außerdem hat man sich um einige Regressions gekümmert, die Anwendern mit Intel 8xx-IGPs schon seit Linux 2.6.27 Kopfzerbrechen bereitet haben.

Linux 2.6.32 bietet mit "VGA Arbitration" nun die Infrastruktur, die die Unterstützung mehrerer Grafikkarten in einem System braucht. Vor allem X11 Multiseat-Setups, auch mit Grafikkarten unterschiedlicher Hersteller, werden davon in Zukunft profitieren.

Wer dem Kernel gerne ganz genau unter die Haube schauen will, kann das mit der jüngsten Inkarnation eines schlicht "perf tools" genannten Programmpakets tun. Dieses nutzt das kürzlich von "Performance Counters" in "Performance Events" umbenannte Subsystem des Kernels, um unter sehr frei definierbaren Umständen Messpunkte und Daten zu liefern, die beim Debuggen des Kernels und seiner Laufzeitcharakteristika helfen.

Ein großer Vorteil von Linux ist, dass es jedem Anwender jederzeit möglich ist seinen eigenen Kernel zu kompilieren. Dieser beinhaltet dann nur die Treiber, Subsysteme und Features, die man auch wirklich braucht. Das spart Speicher, bringt Geschwindigkeit und reduziert potenziell die Anzahl der Angriffsvektoren auf das Betriebssystem. Leider war es vor allem für Anfänger auf dem Gebiet bisher immer recht schwierig, eine möglichst minimale, aber funktionierende Konfiguration für den Kernel zu erstellen. Dies erfordert meist detaillierte Kenntnisse über die Hardware der Maschine, auf der man das zu kompilierende Kernel-Image laufen lassen möchte. Dem wurde nun Abhilfe geschaffen: Die neu eingeführten Makefile-Targets "localmodconfig" und "localyesconfig" eruieren aus den im Moment geladenen Modulen, sowie der aktiven Kernelkonfiguration, welche Treiberkomponenten für den Betrieb unbedingt notwendig sind und konfigurieren den Kernelquellcode automatisch so, dass das Kompilat diesen Voraussetzungen genügt. Diese Konfiguration kann man dann als Basis für weiteres Feintuning nutzen. Intels Atom wird nun explizit als (Sub-)Architektur unterstützt und die Build-Skripte wählen automatisch passende Compiler-Flags, wenn der Kernel für eine solche CPU gebaut wird.

Im Bereich Power Management gibt es Support der ACPI-Spezifikation in Revision 4.0 zu vermelden. Linux ist damit der erste Betriebssystemkernel überhaupt, der sich mit diesem Standard zu verstehen weiß. Intels zukünftige Low-Cost-Plattform Moorestown ersetzt ACPI durch das wesentlich simplere Simple Firmware Interface (SFI), das ebenfalls erste Unterstützung erfährt. SFI soll ACPI nicht ersetzen, sondern nur in Geräten mit Intel Atom-CPUs zum Einsatz kommen.

Im Kernel-Land ist das alles natürlich längst ein alter Hut: Linux 2.6.33 strotzt als RC3 nur so vor neuen Features. So enthält Mainline erstmals das ursprünglich von Österreichern an der TU Wien im Zuge einer Diplomarbeit und später bei LINBIT entwickelte Distributed Replicated Block Device (DRBD). DRBD ist vor allem im Hochverfügbarkeitsbereich interessant, weil es die Echtzeitspiegelung eines beliebigen Blockgeräts über das Netzwerk via TCP ermöglicht. Ebenfalls erwähnenswert ist die Aufnahme des Treibers nouveau in den Staging-Beriech der Kerneltreiber. nouveau ist ein von Kernel- und Xorg-Hackern in ihrer Freizeit programmierter, freier Treiber für viele NVIDIA-Grafikkarten, der ohne Dokumentation oder Unterstützung seitens des Herstellers geschrieben wurde. Trotzdem bietet er schon jetzt auf manchen NVIDIA-Chipgenerationen rudimentäre 3D-Beschleunigung und unterstützt auf fast allen entsprechenden Grafikkarten RandR. Kleine und größere Bugfixes gibt es für unzählige Teilbereiche des Kernels, so auch für Radeon-Grafikkarten, die ext4- und reiserfs-Dateisysteme, sowie für diverse WiFi-Treiber. Die Liste der Änderungen ist damit natürlich noch lange nicht erschöpft; der nächste Pinguin wird detailliert über die in Linux 2.6.33 eingeflossenen Neuerungen berichten!

xorg_136961.png
Das Xorg-Projekt hat kürzlich den X-Server in Version 1.7.3 veröffentlicht, ein reines Bugfix-Release des derzeit aktuellen 1.7-Branch. Es behebt im Wesentlichen zwei schwere Bugs des Vorgängers, sorgt sonst allerdings für keinerlei Überraschungen. Spannender wird es erst wieder mit Version 1.8, auf welche im ersten Quartal 2010 gehofft werden darf. Generell ist zu beobachten, dass sich die Treiberentwicklung immer mehr zur Seite der Betriebsystemkerne hin verschiebt, nicht zuletzt aufgrund der im Pinguin schon öfters angesprochenen Gallium3D- und KMS-Anstrengungen, die derzeit in der Community für Impulse in Sachen Grafik sorgen. Das in den letzten Monaten mit viel Hassliebe bedachte Input-Hotplugging mithilfe von HAL, dem Hardware Abstraction Layer, wird in kommenden Versionen von Xorg auf eine andere Infrastruktur ausweichen, weil HAL nicht mehr weiterentwickelt wird. Wie genau die neue Architektur aussehen wird, steht noch genau nicht fest. Es zeichnet sich aber eine Lösung ab, die die jeweils systemspezifischen Hotplug-Schnittstellen der unterschiedlichen Betriebssysteme ganz spezifisch nutzt. Die Konfiguration sogenannter Input Properties erfolgt dann nicht mehr über HAL und FDI-Dateien, sondern wahrscheinlich über eine Sammlung von Konfigurationsdateien, die direkt von X verwaltet werden.

In letzter Zeit entwickeln sich vor allem die Treiber für Radeon-GPUs rasant weiter: Kernel Mode Setting, HDMI-Audio und eine hardwarebeschleunigte OpenGL-Schnittstelle sind nur einige der neuen Features, die für eine breite Palette von Grafikprozessoren nun auch mit freien Treibern zur Verfügung stehen. Mit Linux 2.6.33 gibt es dank Sync-to-VBlank-Support endlich auch absolut flackerfreien Videogenuss. Ein genaueres Bild über die Fortschritte auf ATI-Hardware bietet die Radeon Feature Matrix im Wiki des Xorg-Projektes.

Bei Intel setzt man im "Intel 2009Q4 graphics package" vor allem auf Entschlackung. Jeglicher Usermode-Modesetting-Code wurde aus dem Treiber entfernt, ebenso wie die inzwischen veralteten 2D-Beschleunigungsarchitekturen XAA und EXA. Version 2.10.0 des Treibers ist folglich auf einen Kernel mit Kernel Mode Setting und einen X-Server mit UXA-Unterstützung angewiesen.

deskdistri_136963.png
KDE und GNOME, die beiden großen freien Desktops, verzeichnen dieser Tage viele Fortschritte. GNOME plant in Version 3 eine kleine Interface-Revolution mit der Einführung von GNOME Shell und GNOME Zeitgeist. GNOME wird dadurch aktivitätszentriert und auch das Dateisystem mit der traditionellen Hierarchie von Verzeichnissen und Dateien tritt in den Hintergrund. Konkreter und vor allem zeitnäher sind die Verbesserungen an KDE 4: KDE 4.3 hat das mittlerweile vierte Point Release mit einer Hand voll Stabilitätsverbesserungen veröffentlicht. Ebenfalls fertig ist die erste Beta-Version von KDE 4.4, dem nächsten Feature-Release, das für Anfang 2010 zu erwarten ist. Das vielversprechende Semantic Desktop-Framework "Nepomuk" steht diesmal besonders im Rampenlicht, alle weiteren Ziele kann man in den Release Goals in der KDE TechBase nachlesen.

In den letzten Wochen und Monaten haben fast alle Distributionen von Rang und Namen neue Zusammenstellungen ihrer Software veröffentlicht. Das vor allem bei Einsteigern beliebte Ubuntu setzt in Version 9.10 unter anderem auf einen (noch) schnelleren Bootprozess, ein optisch aufgewertetes Erscheinungsbild, sowie einige Cloud-Services aus dem Hause Canonical. So ist es mit Ubuntu One möglich, Dateien, Bookmarks, Notizen und Kontaktdaten auf einem zentralen Server abzulegen, und auf mehreren Rechnern synchronisiert zu nutzen. Jeder Ubuntu-Nutzer kann dafür 2 GB Onlinespeicher gratis bei Canonical beantragen, wer mehr will kann für knapp 10 USD/Monat immerhin 50 GB zukaufen.

ubuntu-910-software-center_148586.jpg
Ubuntu 9.10 bringt neue Software frei Haus, mit dem Software Center


Das Fedora Project hat mit Version 12 abermals ein solides Softwarepaket mit topaktuellen Programmpaketen abgeliefert, anfangs aber vor allem negative Schlagzeilen gemacht: Eine inzwischen korrigierte Konfiguration des Privilegienmanagers PolicyKit erlaubte es allen lokal angemeldeten Benutzern signierte, aus den offiziellen Fedora-Repositories stammende Pakete systemweit zu installieren. Trotz sorgfältiger und (für viele) nachvollziehbarer Begründung wurde dieser Umstand nach wenigen Tagen durch ein Update behoben. Fedora 12 bringt unter anderem die neuesten Verbesserungen in NetworkManager und Kernel Mode Setting für viele Intel- und AMD/ATi-Grafikkarten. Genaueres verrät das offizielle Release Announcement.

Novells openSUSE-Distribution liegt in Version 11.2 auf den Spiegelservern. Es bringt unter anderem KDE 4.3 (nun wieder als Default) und GNOME 2.28 mit, sowie erstmalig eine webbasierte Version des Konfigurationstools YaST. Das Press-Release weiß außerdem von Verbesserungen beim Einsatz auf Netbooks zu berichten.

Auch einen Blick wert ist Sidux, eine auf Debian aufsetzende Distribution, die sich vor allem an Desktop-User richtet. Sidux legt bei der Auswahl der Pakete ähnlich wie Fedora besonders großen Wert auf die Aktualität. Sidux gibt es als LiveCD, von der man es auch direkt in wenigen Minuten installieren kann.

Wer lieber kleine rote Teufelchen anstatt knuffiger Pinguine in seinem Computer werkeln sieht, der sollte einen Blick auf FreeBSD 8.0 werfen. Neu sind hier u. A. (experimenteller) NFSv4-Support, stabile Unterstützung von ZFS, ein komplett neu geschriebener und verbesserter USB-Stack, sowie diverse Verbesserungen im Umgang mit Mehrkernsystemen. Auch hier geben die Release Notes einen genaueren Einblick in die Neuerungen.

anw_136964.png
Wer auf Bürosoftware angewiesen ist, wird mit dem freien OpenOffice viel Freue haben. Version 3.2 liegt nun in Beta-Qualität vor und viele Teilkomponenten des Programmpaketes haben Verbesserungen und Korrekturen erfahren. Eine genaue Auflistung findet man wie immer im Changelog, selbstverständlich kann man aber auch selbst Hand anlegen und die Beta-Version zum selber Ausprobieren downloaden.

Als Alternative zu OpenOffice und anderen, vor allem proprietären Office-Paketen, will sich KOffice 2 etablieren. Ursprünglich war KOffice 1.x ein Softwarepaket für KDE 3 unter POSIX-Betriebssystemen mit X11-Displayserver. Nun ist KOffice 2 jedoch als Cross-Platform-Programm ausgelegt: Es wird schlussendlich für GNU/Linux und *BSD, Apple OS X und Microsoft Windows erscheinen. Die kürzlich veröffentlichte Version 2.1 ist ausdrücklich als Preview Release zu verstehen, und eignet sich aller Wahrscheinlichkeit nach noch nicht zum produktiven Alltagseinsatz.

Ebenfalls aus dem Entwicklerkreis von KOffice stammt die Bildbearbeitungssoftware Krita, die dieser Tage um Spenden bittet. Das so gesammelte Geld wird dazu eingesetzt, um LukᨠTvrdý für mindestens drei Monate in Vollzeit zur Verbesserung und Erweiterung von Krita zu beschäftigen. Die avisierten 3.000 USD wurden bereits übertroffen, doch auch alle weiter eintreffenden Spendeneinnahmen werden selbstverständlich zur weiteren Verbesserung des Programms verwendet.

click to enlarge
Krita ist ein freies Bildbearbeitungsprogramm, das wie GIMP auch professionellen Ansprüchen genügen soll.


Der beliebte Audioplayer Amarok wurde in Version 2.2.1 der Öffentlichkeit präsentiert. Implementiert wurden unter anderem ein Fullscreen-Modus, Unterstützung für (Windows-)Dateifreigaben via SMB/CIFS, sowie Unterstützung für das unter KDE desktopweit verfügbare Benachrichtigungssystem knotify.

Wer gerne eine Runde Capture the Flag in Quake oder anderen teambasierten Spielen spielt, wo nur rasche und klare Kommunikation im Team zum Erfolg führt, der sollte sich die Voice-Chat-Software Mumble ansehen. Version 1.2.0 bringt ein völlig neues Netzwerkprotokoll mit eigenem Sprach-Codec, der den lange bewährten Speex ersetzt und diesen in Sprachklarheit und -qualität noch übertreffen soll. Mumble ist nicht nur für GNU/Linux, sondern auch für Microsoft Windows und Apple OS X verfügbar.

Weitere Neuigkeiten kurz gefasst:
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz