Vydání GNU Coreutils 9.0

K dispozici je stabilní verze sady základních systémových nástrojů GNU Coreutils 9.0, která zahrnuje programy jako sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls atd. Výrazná změna v čísle verze je způsobena změnami v chování některých utilit.

Klíčové změny:

  • Obslužné programy cp a install mají při kopírování výchozí režim kopírování při zápisu (používá se ioctl ficlone ke sdílení dat mezi více soubory namísto vytváření úplného klonu).
  • Obslužné programy cp, install a mv používají mechanismy poskytované systémem k urychlení operací kopírování (pomocí systémového volání copy_file_range pouze ke kopírování na straně jádra, bez přenosu dat do paměti procesu v uživatelském prostoru).
  • Obslužné programy cp, install a mv používají k detekci prázdných souborů v souborech jednodušší a přenosnější volání lseek+SEEK_HOLE namísto ioctl+FS_IOC_FIEMAP.
  • Nástroj wc používá instrukce AVX2 k urychlení výpočtu počtu řádků. Při použití této optimalizace se rychlost wc zvýšila 5krát.
  • Do obslužného programu cksum byla přidána možnost "-a" (--algorithm) pro výběr hashovacího algoritmu. Pro urychlení výpočtu kontrolních součtů v obslužném programu cksum se používají instrukce pclmul při použití režimu „--algorithm=crc“, který zrychluje výpočty až 8krát. Na systémech bez podpory pclmul je režim crc 4krát rychlejší. Zbývající hashovací algoritmy (sum, md5sum, b2sum, sha*sum, sm3 atd.) jsou implementovány voláním funkcí libcrypto.
  • V obslužných programech md5sum, cksum, sha*sum a b2sum umožňuje použití příznaku „--check“ přítomnost sekvence CRLF na konci řádku kontrolního součtu. "cksum --check" poskytuje automatickou detekci použitého hashovacího algoritmu.
  • Obslužný program ls přidal volbu "--sort=width" pro řazení podle délky souboru a také volbu "--zero" pro ukončení každého řádku znakem null. Bylo vráceno staré chování, což způsobilo, že se při zpracování vzdáleného adresáře místo chyby zobrazil prázdný adresář.
  • Nástroj df implementuje detekci síťových souborových systémů acfs, coda, fhgfs, gpfs, ibrix, ocfs2 a vxfs.
  • Podpora pro typy souborových systémů „devmem“, „exfat“, „secretmem“, „vboxsf“ a „zonefs“ byla přidána do utilit stat a tail. Pro „vboxsf“ se polling používá ke sledování změn v „tail -f“ a pro zbytek se používá inotify.

Zdroj: opennet.ru

Přidat komentář