Opublikowana stabilna wersja zestawu podstawowych narzędzi systemowych GNU Coreutils 9.6, w skład którego wchodzą takie programy, jak sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls i inne.
Kluczowe nowości:
- Do narzędzia cksum dodano opcję „-a crc32b” do obliczania sum kontrolnych zgodnie ze specyfikacją ITU V.42, stosowaną np. w gzip. Wprowadzono optymalizację wydajności dzięki użyciu instrukcji pclmul. Aby przyspieszyć działanie polecenia „cksum -a crc”, wykorzystano rozszerzenia SIMD AVX2, AVX512 i ARMv8, które w testach skracają czas obliczeń o 40%, 60% i 80% odpowiednio.
- W narzędziu ls dodano opcję „—sort=name” do wyraźnego sortowania według nazwy pliku.
- W printf dodano wsparcie dla zindeksowanych argumentów zgodnie ze standardem POSIX:2024 w formacie „%$”, gdzie ‘’ to liczba całkowita argumentu.
- W narzędziu test dodano możliwość używania operatorów „»” ze stringami (POSIX:2024).
- Do narzędzia timeout wprowadzono nowe opcje „-f” i „-p” zgodnie ze standardem POSIX:2024, które są skróconymi wersjami opcji „—foreground” i „—preserve-status”.
- W narzędziu sort przyspieszono operacje na plikach w pseudo-FS, takich jak /proc.
- W narzędziach stat i tail dodano wsparcie dla typów FS „bcachefs” i „pidfs”. Do wyświetlania typu FS dodano polecenie „stat -f -c%T”. W poleceniu „tail -f” wykorzystano mechanizm inotify dla FS „bcachefs” i „pidfs”.
- W narzędziu wc minimalny rozmiar odczytywanego bloku zwiększono z 16KiB do 256KiB. Podczas odczytu plików z pamięci podręcznej wydajność „wc -l” zwiększono o około 10%.
Źródło: opennet.ru
