Login
Newsletter
Werbung

Do, 3. August 2017, 13:00

Software::Entwicklung

glibc 2.26 freigegeben

Die glibc-Entwickler haben Version 2.26 der C-Laufzeitbibliothek veröffentlicht. In diese Version wurden einige neue Funktionen aufgenommen, und die Geschwindigkeit wurde an einigen Stellen optimiert.

Mirko Lindner

glibc ist die Laufzeitbibliothek für Programme, die in der Programmiersprache C geschrieben sind. Da auch C++ davon Gebrauch macht und viele Compiler und Interpreter für andere Sprachen selbst in C geschrieben sind, hängt letztlich ein Großteil der unter Linux laufenden Software von glibc ab. Die Bibliothek hat als Hauptziele Portabilität und hohe Geschwindigkeit. Da sie außerdem allen relevanten Standards wie ISO C11 und POSIX.1-2008 folgt, ist ihr Umfang wesentlich größer als der von alternativen Implementierungen. Sie bietet zudem eine umfassende Unterstützung für Internationalisierung, die über die meisten alternativen Bibliotheken hinausgeht.

Version 2.26 von glibc enthält laut der Ankündigung von Siddhesh Poyarekar eine Menge von neuen Funktionen und Optimierungen. So wurde ein Cache für malloc geschaffen, der für jeden Thread separat ist, so dass beim Zugriff keinerlei Sperren gesetzt werden müssen. Eine Vielzahl von Programmen, die viele Aufrufe von malloc verwenden, sollen dadurch mit höherer Geschwindigkeit laufen. Die Unterstützung für Unicode wurde auf Version 10.0.0 gebracht, was die Breite einiger Emoji ändert und Probleme mit Bibliotheken verursachen kann, die darauf noch nicht eingestellt sind. Die Sortierreihenfolge für Ungarisch wurde den offiziellen Regeln angeglichen.

Bei der DNS-Namensauflösung werden Änderungen in der Datei /etc/resolv.conf automatisch neu eingelesen, was mit einer neuen Option verhindert werden kann. Die Anzahl der Domains, in denen nach einem Namen gesucht wird, wurde von maximal sechs auf beliebig viele erhöht. Die Domains sind ebenfalls in /etc/resolv.conf konfiguriert. Außerdem wählt glibc, wenn man die Option rotate angibt, nicht mehr starr den zweiten angegebenen Nameserver aus, sondern einen zufälligen aus der Liste.

Mit der Umgebungsvariablen GLIBC_TUNABLES können Anwender bestimmte Einstellungen in glibc optimieren. Diese Funktionalität ist jetzt standardmäßig eingeschaltet. Die Funktion reallocarray, übernommen von OpenBSD, soll das Ändern der Speicherallokation sicherer machen. Neue Funktionen gibt es auch für die Linux-Systemaufrufe preadv2 und pwritev2.

Die Bibliothek libm unterstützt jetzt 128 Bit-Gleitkommarechnungen nach ISO/IEC/IEEE 60559:2011 (IEEE 754-2008) und ISO/IEC TS 18661-3:2015 auf den Plattformen ia64, powerpc64le und x86 (32 und 64 Bit). Es stehen dieselben Funktionen zur Verfügung wie für die Gleitkommatypen float (32 Bit) und double (64 Bit), aber jeweils mit dem Suffix f128.

glibc 2.26 setzt einen Kernel ab 3.2 voraus, auf manchen Architekturen allerdings einen neueren. Auch auf der x86-Architektur (32 und 64 Bit) ist anders als in der vorigen Version ein Linux-Kernel ab 3.2 gefordert.

Als obsolet gelten in der neuen Version von glibc Sun RPC (es existieren modernere RPC-Implementationen), NIS und NIS+. Diese Funktionalität kann aber weiterhin eincompiliert werden. Darüber hinaus wurden einige weitere Funktionen implementiert, einige veraltete entfernt und eine Reihe von Fehlern korrigiert. Eine komplette Auflistung der Änderungen bietet die Ankündigung, Einzelheiten findet man im auf Bugzilla beruhenden Bugtracking-System für glibc.

Werbung
Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung