Aumentar el número de la versión principal a 5 no significa cambios importantes ni fallas de compatibilidad. Simplemente ayuda a nuestro querido Linus Torvalds a mantener la tranquilidad. A continuación se muestra una lista de algunos de los cambios e innovaciones.
Núcleo central:
- El programador de procesos CFS en procesadores asimétricos como ARM funciona de manera diferente: carga primero los núcleos de bajo consumo y de bajo consumo.
- A través de la API de seguimiento de eventos de archivos fanotify, puede recibir notificaciones cuando se abre un archivo para su ejecución.
- Se ha integrado el controlador cpuset, que se puede utilizar para limitar grupos de procesos en función del uso de CPU y nodos NUMA.
- Se incluye soporte para los siguientes dispositivos ARM: Qualcomm QCS404, Allwinner T3, NXP/Freescale i.MX7ULP, NXP LS1028A, i.MX8, RDA Micro RDA8810PL, Rockchip Gru Scarlet, Allwinner Emlid Neutis N5 y muchos otros.
- Mejoras en el subsistema ARM: memoria hot-plug, protección Meltdown y Spectre, direccionamiento de memoria de 52 bits, etc.
- Soporte para instrucciones WBNOINVD para x86-64.
Subsistema de memoria:
- La sustitución de etiquetas de prueba con bajo consumo de memoria está disponible para la herramienta KASAN en plataformas ARM64.
- La fragmentación de la memoria se ha reducido drásticamente (hasta un 90%), lo que hace que el motor Transparent HugePage funcione mejor.
- El rendimiento de mremap(2) en áreas de memoria grandes se ha incrementado hasta 20 veces.
- En el mecanismo KSM, jhash2 se reemplaza por xxhash, por lo que la velocidad de KSM en sistemas de 64 bits se ha multiplicado por 5.
- Mejoras a Zram y OOM.
Dispositivos de bloque y sistemas de archivos:
- El mecanismo blk-mq con un sistema multinivel de colas de solicitudes se ha convertido en el principal para los dispositivos de bloque. Se ha eliminado todo el código que no sea mq.
- Mejoras en la compatibilidad con NVMe, especialmente en términos de funcionamiento del dispositivo a través de la red.
- Para Btrfs, se implementa soporte completo para archivos de intercambio, además de cambiar el FSID sin reescribir los metadatos.
- Se agregó una llamada ioctl a F2FS para una verificación diferida del FS a través de fsck.
- BinderFS integrado: un pseudo-FS para comunicación entre procesos. Le permite ejecutar varias instancias de Android en el mismo entorno.
- Una serie de mejoras en CIFS: caché DFS, atributos extendidos, protocolo smb3.1.1.
- Zram funciona de manera más óptima con dispositivos de intercambio no utilizados, lo que ahorra memoria.
Seguridad y virtualización:
- Se agregó la función hash Streebog (GOST 34.11-2012), desarrollada por el FSB de la Federación Rusa.
- Soporte para el algoritmo de cifrado Adiantum desarrollado por Google para dispositivos de bajo consumo.
- Algoritmos XChaCha12, XChaCha20 y NHPoly1305 incluidos.
- El manejo de llamadas seccomp ahora se puede trasladar al espacio del usuario.
- Para los sistemas invitados KVM, la compatibilidad con las extensiones de Intel Processor Trace se implementa con una degradación mínima del rendimiento.
- Mejoras en el subsistema KVM/Hyper-V.
- El controlador virtio-gpu ahora admite la simulación EDID para monitores virtuales.
- El controlador virtio_blk implementa la llamada de descarte.
- Funciones de seguridad implementadas para la memoria NV basadas en las especificaciones Intel DSM 1.8.
Controladores de dispositivo:
- Cambios en la API DRM para admitir completamente la sincronización adaptativa (parte del estándar DisplayPort) y frecuencias de actualización variables (parte del estándar HDMI).
- El estándar Display Stream Compression se incluye para la compresión sin pérdidas de transmisiones de video dirigidas a pantallas de alta resolución.
- El controlador AMDGPU ahora admite FreeSync 2 HDR y reinicio de GPU para CI, VI, SOC15.
- El controlador de vídeo Intel ahora admite chips Amber Lake, formatos YCBCR 4:2:0 y YCBCR 4:4:4.
- El controlador Nouveau incluye trabajo con modos de video para tarjetas de video de la familia Turing TU104/TU106.
- Drivers integrados para pantalla táctil Raspberry Pi, paneles CDTech, Banana Pi, DLC1010GIG, etc.
- El controlador HDA admite el botón "jack", indicadores LED y dispositivos Tegra186 y Tegra194.
- El subsistema de entrada ha aprendido a funcionar con desplazamiento de alta precisión en algunos ratones de Microsoft y Logitech.
- Muchos cambios en controladores para cámaras web, sintonizadores de TV, USB, IIO, etc.
Subsistema de red:
- La pila UDP admite un mecanismo de copia cero para transmitir datos a través de un socket sin almacenamiento intermedio.
- Allí también se ha agregado el mecanismo de descarga de recepción genérica.
- Rendimiento de búsqueda mejorado en políticas xfrm cuando hay una gran cantidad de ellas.
- Se ha agregado la capacidad de descargar túneles al controlador VLAN.
- Una serie de mejoras en el soporte para Infiniband y redes inalámbricas.
Fuente: linux.org.ru