Lanzamiento del conjunto de utilidades centrales del sistema GNU Coreutils 9.0

Está disponible una versión estable del conjunto de utilidades básicas del sistema GNU Coreutils 9.0, que incluye programas como sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls, etc. El cambio significativo en el número de versión se debe a cambios en el comportamiento de algunas utilidades.

Cambios clave:

  • Las utilidades cp e install utilizan de forma predeterminada el modo de copia en escritura al copiar (usando ioctl ficlone para compartir datos entre varios archivos en lugar de crear un clon completo).
  • Las utilidades cp, install y mv utilizan mecanismos proporcionados por el sistema para acelerar las operaciones de copia (utilizando la llamada al sistema copy_file_range para realizar copias únicamente del lado del kernel, sin transferir datos para procesar la memoria en el espacio del usuario).
  • Las utilidades cp, install y mv utilizan una llamada lseek+SEEK_HOLE más simple y portátil en lugar de ioctl+FS_IOC_FIEMAP para detectar archivos vacíos.
  • La utilidad wc utiliza instrucciones AVX2 para acelerar el cálculo del número de líneas. Al utilizar esta optimización, la velocidad del baño aumentó 5 veces.
  • La opción "-a" (--algoritmo) se ha agregado a la utilidad cksum para seleccionar un algoritmo hash. Para acelerar el cálculo de sumas de verificación en la utilidad cksum, se utilizan instrucciones pclmul cuando se usa el modo “--algorithm=crc”, que acelera los cálculos hasta 8 veces. En sistemas sin soporte pclmul, el modo crc es 4 veces más rápido. Los algoritmos hash restantes (sum, md5sum, b2sum, sha*sum, sm3, etc.) se implementan llamando a las funciones libcrypto.
  • En las utilidades md5sum, cksum, sha*sum y b2sum, el uso del indicador “--check” permite la presencia de una secuencia CRLF al final de la línea de suma de verificación. "cksum --check" proporciona detección automática del algoritmo hash utilizado.
  • La utilidad ls ha agregado una opción "--sort=width" para ordenar por longitud del nombre de archivo, así como una opción "--zero" para terminar cada línea con un carácter nulo. Se ha devuelto el comportamiento anterior, lo que provoca que se muestre un directorio vacío en lugar de un error al procesar un directorio remoto.
  • La utilidad df implementa la detección de sistemas de archivos de red acfs, coda, fhgfs, gpfs, ibrix, ocfs2 y vxfs.
  • Se ha agregado soporte para los tipos de sistemas de archivos “devmem”, “exfat”, “secretmem”, “vboxsf” y “zonefs” a las utilidades stat y tail. Para "vboxsf", se utiliza el sondeo para rastrear los cambios en "tail -f", y para el resto, se utiliza inotify.

Fuente: opennet.ru

Añadir un comentario