Das GNU-Projekt hat die Version 1.14 des gzip-Pakets veröffentlicht, das die Utilities gzip, gunzip, zmore und zcat zur Komprimierung und Dekomprimierung von Daten mit dem LZ77-Algorithmus umfasst. In dieser neuen Version wurden die Dekompressionsoperationen erheblich beschleunigt. Auf x86_64-Systemen, die PCLMUL-Befehlssätze unterstützen, erreicht der Leistungszuwachs 40 %, während er bei Systemen ohne PCLMUL-Unterstützung bis zu 20 % beträgt.
Die Beschleunigung wurde durch die Optimierung der Berechnungen von Prüfziffern (CRC) erreicht, für die zuvor etwa die Hälfte der gesamten CPU-Zeit benötigt wurde. Die optimierte CRC-Version wurde bereits in die gnulib-Bibliothek aufgenommen, was auch die Leistung anderer GNU-Projekte steigern wird, die diese Prüfziffernfunktionen verwenden.
Änderungen, die die Kompatibilität beeinträchtigen: Die Installation des zmore-Utilitys auf Plattformen, die das 'more'-Utility nicht verwenden, wurde eingestellt; die Verarbeitung der Umgebungsvariablen GZIP (die Standardoptionen festlegt) wurde eingestellt, wenn die Optionen '-1' (—fast), '-2', … '-9' (—best), '—rsyncable' oder '—synchronous' nicht ausdrücklich angegeben sind.
Darüber hinaus kann Folgendes erwähnt werden:
- Veröffentlichung des Dienstprogramms zur Organisation der Datensuche in Textdateien – GNU Grep 3.12. In der neuen Version wurde ein Problem bei der Suche in Verzeichnissen mit mehr als 100.000 Dateien behoben. Die Unterstützung der Option «—unix-byte-offsets» («-u») wurde eingestellt. Auf Windows- und AIX-Plattformen im 32-Bit-Modus wurde die Unterstützung von Unicode-Zeichen, die über die Basis-Multilingual-Plane Unicode (Codes von 0000 bis FFFF) hinausgehen, implementiert.
- Veröffentlichung des GNU Diffutils 3.12, das Dienstprogramme zur Bewertung der Unterschiede in Dateien wie diff, diff3, sdiff und cmp umfasst. In der neuen Version wurden zwei Fehler behoben: ein Absturz bei Verwendung von «diff -y» und Probleme mit «diff -r» beim Vergleichen von nicht leeren und leeren Dateien.
- Veröffentlichung des GNU Coreutils 9.7, das grundlegende Systemdienstprogramme wie sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln und ls umfasst. In der neuen Version wurde die Unterstützung für Systeme auf Basis der C-Bibliotheken musl und uclibc in das Dienstprogramm logname aufgenommen. Darüber hinaus gab es nur Fehlerbehebungen, die die Dienstprogramme cat, cksum, dd, ls, timeout, sleep, tail und who betreffen.
Quelle: opennet.ru
