La GNU C Library (glibc) 2.41 ha sido lanzada oficialmente como la más reciente actualización semestral de esta biblioteca fundamental para sistemas Linux y otros entornos. La nueva versión introduce mejoras significativas en compatibilidad con C23, optimización para CPU modernas y mejoras de rendimiento en funciones clave.
Principales novedades de glibc 2.41
Entre los cambios más relevantes de esta versión destacan:
✔ Soporte para nuevas funciones ISO C23 en math.h
, incluyendo acospi
, asinpi
, atan2pi
, atanpi
, cospi
, sinpi
y tanpi
.
✔ Compatibilidad con las funciones sched_setattr
y sched_getattr
en Linux, mejorando el soporte para políticas de programación avanzadas como SCHED_DEADLINE.
✔ Optimización de strnlen()
para procesadores Intel y AMD, mejorando la eficiencia en operaciones de manipulación de cadenas.
✔ Mejoras en la generación de código y funciones matemáticas en AArch64, incluyendo SVE y NEON intrinsics para potenciar el rendimiento en arquitecturas Arm.
✔ Soporte para el nuevo tipo de arquitectura Hygon x86_64, utilizado en ciertos procesadores x86 de China.
✔ Nuevo tunable glibc.rtld.execstack
, que permite controlar si se permite una pila ejecutable en el programa principal.
✔ Actualización de tablas de codificación de caracteres según Unicode 16.0.
✔ Compatibilidad con el nuevo ABI de «Restartable Sequences» (RSEQ), disponible desde Linux 6.3, mejorando la eficiencia en tareas multi-hilo.
✔ El programa iconv
ahora permite la conversión de archivos en el mismo lugar.
✔ El stub resolver de DNS ahora admite la opción strict-error
para una gestión más estricta de errores en consultas DNS.
✔ Mayor cobertura en la suite de pruebas, con 800 nuevos test cases respecto a la versión anterior.
✔ Corrección de múltiples errores, incluyendo un posible buffer overflow al imprimir mensajes de fallo en aserciones.
Optimización para Intel, AMD y Arm
Uno de los aspectos más destacados de glibc 2.41 es la mejora en el rendimiento de funciones clave en arquitecturas Intel, AMD y Arm. Entre las mejoras más relevantes:
✔ Mayor velocidad en strnlen()
en CPUs x86_64 de Intel y AMD.
✔ Optimización de funciones matemáticas con corrección de redondeo.
✔ Aceleración en AArch64 con uso mejorado de SVE y NEON.
✔ Compatibilidad con la tecnología Guarded Control Stack (GCS) en Arm64, mejorando la seguridad y estabilidad del sistema.
Disponibilidad
El código fuente de glibc 2.41 ya está disponible a través de Git y puede ser consultado en Sourceware.org. Esta versión se espera que sea integrada en las principales distribuciones Linux en los próximos meses, trayendo consigo mejoras en rendimiento y compatibilidad con estándares modernos de C y nuevas arquitecturas.