Ya está disponible Linux 6.6 con un nuevo planificador de tareas y con muchas mejoras

Linus Torvalds ha anunciado la publicación en fase estable de Linux 6.6, la última versión del kernel de código abierto. Como suele ser habitual, hay una cantidad destacable de novedades que abarcan diversos frentes.

Lo primero que sobresale de Linux 6.6 es el nuevo planificador de tareas, EEVDF (Earliest Eligible Virtual Deadline First), que viene a sustituir a un CFS que fue fusionado en Linux 2.6.23 y cuya función es muy importante para lograr un buen rendimiento y buenas latencias, por lo que uno ya puede imaginarse los apartados en los que pretende mejorar.

Los aspectos más básicos del algoritmo EEVDF es que está diseñado para garantizar que los procesos que no reciben la atención que deberían sean seleccionados la próxima vez, mientras que los procesos que han recibido más atención de la que merecían son “castigados”. La consecuencia de este enfoque es, al menos sobre el papel, mejorar la latencia de las tareas que CFS se dejaba atrás y minimizar las otras tareas que se programan en exceso de forma rutinaria.

La segunda novedad destacada de Linux 6.6 es el soporte de la característica de hardware de pila oculta de Intel, que ha llegado tras años de discusiones. La pila oculta funciona manteniendo una pila secundaria (sombra) que no puede ser modificada directamente. Al administrar la pila, el procesador envía la dirección de retorno tanto a la pila normal como a la oculta con permiso especial.

El procesador extrae la copia instantánea de la copia oculta y la compara con la normal, y en caso de diferir, genera un fallo de protección de control que puede evitar los ataques de programación orientada al retorno (ROP) que intentan modificar la pila. Funciona en el espacio de usuario y de forma nativa solo en kernels de 64-bit, mientras que el soporte para 32-bit solo a través de emulación de IA32.

La entrada-salida directa asíncrona usando io_uring ha visto su rendimiento/latencia mejorado hasta en un 37%. Por otro lado, el sistema de ficheros Xfs ha incluido las primeras piezas para la infraestructura que le permitirá aplicar la comprobación de disco (fsck) en línea y poder así repararse solo sin tener que desmontar.

Continuando con los sistemas de ficheros más populares, Btrfs es capaz ahora de mantener el propietario y la fecha originales del subvolumen en la creación de un subvolumen auxiliar, cuando antes se establecían como valores predeterminados la fecha de creación del subvolumen auxiliar y root como propietario.

Otras cosas importantes de Btrfs en Linux 6.6 son el establecimiento de la función de verificación de la integridad como obsoleta y la restauración del rendimiento de la limpieza tras la reescritura llevada a cabo en Linux 6.4.

Obviamente, no vamos a olvidarnos de EXT4, el gran dominador del espectro Deb, que en este lanzamiento ha introducido comprobación y actualización periódica del superbloque y se ha acelerado la escritura de anexos en la asignación retratada (delalloc).

Cambiando de tercio, los procesadores de AMD vuelven a acaparar protagonismo con la introducción del soporte para la monitorización de las temperaturas y de detección y corrección de errores (EDAC) en los modelos basados en la arquitectura Zen 5. Otro detalle interesante es el control de aceleración dinámica (Dynamic Boost Control) para que algunos modelos de SoC Ryzen puedan enviar órdenes autenticadas al procesador de seguridad de AMD y controlar ciertas características relacionadas con el rendimiento.

Saltando a las gráficas Radeon, está el soporte para FreeSync Panel Replay como alternativa a Panel Self Refresh (PSR), que el código de pantalla (DC) de AMDGPU funciona en RISC-V y que el mismo driver AMDGPU es capaz de exponer la potencia actual y la promedio en las gráficas compatibles.

La historia del kernel Linux es imposible de entender sin Intel, uno de los grandes titanes en materia de contribución. El segundo gigante azul (el primero es IBM) ha incluido planificación de clústeres para sus procesadores híbridos (Alder Lake, Raptor Lake y posteriores), la habilitación del soporte de sonido para Arrow Lake y Lunar Lake, se ha restaurado el soporte de PSR en portátiles con procesadores Haswell y Broadwell y se han introducido mejoras en el rendimiento de i915, el viejo driver para hacer funcionar gráficas de Intel y que a día de hoy sigue siendo el referente.

NVIDIA también recibe su ración de novedades importantes en Linux 6.6, aunque sea a través del modesto Nouveau. Aquí sobresale el trabajo para establecer los cimientos que permitan soportar NVK, el driver de Vulkan que debería cubrir una de las carencias más importantes que arrastra el soporte para las gráficas del gigante verde a través de la pila gráfica estándar.

Es importante tener en cuenta que, debido a las grandes limitaciones que arrastra Nouveau, es muy difícil que NVK obre un milagro en materia de rendimiento con videojuegos, pero al menos servirá para que el driver del kernel pueda ejecutar en un futuro aplicaciones que solo se apoyan en Vulkan, una API que se está abriendo paso muy poco a poco.

Los portátiles de HP cuentan ahora con un driver que permite administrar la configuración de la BIOS desde Linux. Algunos modelos de la compañía estadounidense enfocados al mercado empresarial y corporativo tienen una interfaz de Instrumentación de Gestión de Windows (WMI) para manejar configuraciones de la BIOS desde el entorno del sistema operativo. Veremos en qué se traduce esto de cara a los usuarios de Linux a la hora de la verdad, pero viendo el enfoque de la característica, apunta a que muy pocos modelos se beneficiarán de ella.

Y entrando en terrenos más banales, el soporte para diversos periféricos de entrada ha sido mejorado en Linux 6.6, entre ellos los mandos del NVIDIA Shield y de Google Stadia. Hailuck, el vendedor de periféricos para Apple, ha sido añadido al driver Apple HID para identificar al menos los teclados KB750 y KB770, mientras que el driver logitech-hidpp es capaz de soportar ahora el ratón Logitech MX Anywhere 3 a través de Bluetooth y con desplazamiento de alta resolución y el Logitech G Pro X Superlight Gaming mediante USB.

Y hasta aquí los aspectos más importantes de Linux 6.6. La actualización del kernel no suele ser algo crítico para la mayoría de los usuarios, sobre todo si el hardware tiene algunos años. Aparte del tortuoso proceso de compilación, los usuarios pueden recurrir a una distribución rolling release y bleeding edge como Arch Linux, openSUSE Tumbleweed o MicroOS, tener algo más de paciencia y esperar a que llegue a Fedora 38 o 39 o recurrir a los repositorios de terceros que hay para Ubuntu.

Todos los detalles de en torno Linux 6.6 están disponibles en la correspondiente página de Kernel Newbies, donde están presentados de forma más masticada para aquellos no tengan profundos conocimientos.