Das GNU-Projekt hat die Version 1.14 des gzip-Pakets veröffentlicht, die die Tools gzip, gunzip, zmore und zcat zur Kompression und Dekompression von Daten mithilfe des LZ77-Algorithmus enthält. In der neuen Version wurden die Dekompressionsoperationen erheblich beschleunigt. Auf x86_64-Systemen, die PCLMUL-Prozessoranweisungen unterstützen, beträgt die Leistungssteigerung bis zu 40 %, während sie auf Systemen ohne PCLMUL-Unterstützung bis zu 20 % erreicht.
Die Beschleunigung wurde durch die Optimierung der Berechnungen von Prüfziffern (CRC) erreicht, für die zuvor etwa die Hälfte der gesamten Prozessorzeit benötigt wurde. Die optimierte CRC-Version wurde bereits in die gnulib-Bibliothek integriert, was auch die Beschleunigung anderer GNU-Projekte zur Folge haben wird, die Funktionen zur Berechnung von Prüfziffern verwenden.
Es wurden inkompatible Änderungen vorgenommen: die Installation des zmore-Tools auf Plattformen, die das ‚more‘-Tool nicht verwenden, wurde eingestellt; die Verarbeitung der Umgebungsvariable GZIP (die Standardoptionen festlegt) wurde in Situationen eingestellt, in denen die Optionen ‚-1‘ (—fast), ‚-2‘,... ‚-9‘ (—best), ‚—rsyncable‘ oder ‚—synchronous‘ nicht ausdrücklich angegeben sind.
Zusätzlich ist zu erwähnen:
- Die Veröffentlichung des Tools zur Suche von Daten in Textdateien — GNU Grep 3.12. In der neuen Version wurde ein Problem mit der Suche in Verzeichnissen, die mehr als 100.000 Dateien enthalten, behoben. Die Unterstützung der Option ‚—unix-byte-offsets‘ („-u“) wurde eingestellt. Auf den Plattformen Windows und AIX wurde im 32-Bit-Modus die Unterstützung von Unicode-Zeichen implementiert, die außerhalb der Basis-Multilingualen Ebene von Unicode liegen (Codes von 0000 bis FFFF).
- Die Veröffentlichung des GNU Diffutils 3.12-Pakets, das Tools zur Dateivergleichsanalyse enthält, wie diff, diff3, sdiff und cmp. In der neuen Version wurden zwei Fehler behoben: ein Absturz beim Einsatz von ‚diff -y‘ und Probleme mit ‚diff -r‘ beim Vergleichen einer nicht leeren mit einer leeren Datei.
- Die Veröffentlichung des GNU Coreutils 9.7-Pakets, das Programme wie sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln und ls enthält. In der neuen Version wurde die Unterstützung für Systeme auf Basis der C-Bibliotheken musl und uclibc in das logname-Tool integriert. Ansonsten wurden nur Fehlerbehebungen für die Tools cat, cksum, dd, ls, timeout, sleep, tail und who vermerkt.
Quelle: opennet.ru
