Opublikowano stabilną wersję zestawu podstawowych narzędzi systemowych GNU Coreutils 9.6, w skład której wchodzą takie programy jak sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls itp.
Kluczowe innowacje:
- Do narzędzia cksum dodano opcję „-a crc32b”, umożliwiającą obliczanie sum kontrolnych zgodnie ze specyfikacją ITU V.42, wykorzystywaną np. w gzip. Dodano optymalizację wydajności przy użyciu instrukcji pclmul. Aby przyspieszyć działanie komendy „cksum -a crc”, zastosowano rozszerzenia SIMD AVX2, AVX512 i ARMv8, które w testach skracają czas obliczeń odpowiednio o 40%, 60% i 80%.
- Do narzędzia ls dodano opcję „--sort=nazwa”, aby jawnie ustawić sortowanie według nazwy pliku.
- Printf obsługuje teraz indeksowane argumenty POSIX:2024 w formacie „%
- Do narzędzia testowego dodano możliwość używania operatorów " z ciągami znaków (POSIX:2024).
- Do narzędzia timeout dodano opcje „-f” i „-p” wprowadzone w standardzie POSIX:2024, które są skróconymi wersjami opcji „--foreground” i „--preserve-status”.
- W narzędziu sort operacje na plikach w pseudo-FS, takie jak /proc, są przyspieszane.
- Do narzędzi stat i tail dodano obsługę typów systemów plików „bcachefs” i „pidfs”. Aby wyświetlić typ FS, dodano polecenie „stat -f -c%T”. Polecenie „tail -f” wykorzystuje mechanizm inotify dla systemów plików „bcachefs” i „pidfs”.
- W narzędziu wc zwiększono minimalny rozmiar jednorazowo odczytywanego bloku z 16 KB do 256 KB. Podczas odczytu plików z pamięci podręcznej wydajność „wc -l” wzrosła o około 10%.
Źródło: opennet.ru
