logo linux

Linux 3.14

Después de que hubieran empezado a salir novedades sobre su predecesor, se ha publicado la versión final de Linux 3.14.

La nueva versión está disponible desde hace unas horas. Entre otras muchas características, incluye las siguiente mejoras:

· Se ha mejorado el soporte para los gráficos Broadwell, el nucleo de Intel que saldrá al mercado dentro de unos meses
· Los controladores gráficos libres de nVidia (Nouveau) incluyen soporte para la GPU nVidia GK110 (Geforce 780) y para la GK208 (Geforce 630/640), aunque de momento no habrá soporte para la gama Maxwell.
· Se habilita por defecto el adminstrador de energía dinámico (DPM) para el hardware más nuevo de ATI en sus controladores libres, se incluye soporte UVD para Radeon South Island y se arreglan algunos fallos.
· Ahora hay soporte para el coprocesador criptográfico de AMD (AMD CCO) y para los Intel Merrifield.
· Se incluye soporte para el mando de juegos Logitech Dual Action.
· Hay mejoras de rendimiento con el sistema de archivos F2FS y nuevas características para Btrfs.

En Linux Kernel Newbies se pueden consultar el detalle de todos los cambios:

1. Características destacadas

1.1. Planificación con límite de plazo (Deadline scheduling class) para una mejor planificación de procesos en tiempo real

Los sistemas operativos tradicionalmente proporcionan priorización de procesos: cuanta más alta es la prioridad del proceso, más tiempo programado puede usar el proceso con respecto a otros procesos con prioridades menores. En Linux, los usuarios normalmente programan las prioridades con valores de -20 a 19 usando la utilidad “nice” (además, Linux soporta la noción de planificación de clases (scheduling classes): cada clase proporciona una política de planificación diferente; por ejemplo, hay una clase llamada “SCHED_FIFO” con una política “el primero en entrar es el primero en salir” y una política “SCHED_RR con una política round-robin).

La forma de abordar la cuestión de las prioridades de los procesos no es, sin embargo, la mejor forma para tareas en tiempo real. La planificación “Deadline” deja de lado la noción de prioridades de procesos. En su lugar, los procesos proporcionan tres parámetros: tiempo de ejecución, periodo y límite de plazo (deadline). Se garantiza que una tarea “SCHED_DEADLINE” reciba el tiempo de ejecución en microsegundos en cada periodo (en microsegundos) y ese valor de tiempo de ejecución en microsegundos estás disponible dentro del valor de límite de plazo (deadline) en microsegundos desde el inicio del periodo. La planificación de la tarea usa esa información para ejecutar el proceso con el límite de plazo más temprano, un comportamiento más cercano a las necesidades requeridas por los sistemas en tiempo real.

1.2. zram: mecanismo de compresión de memoria se considera estable

El mecanismo zram proporciona dispositivos de bloques de RAM. Cada uno de estos bloques escritos se comprime. Si el bloque de zram se usa como swap, el sistema comprimirá la memoria swap. Esto funciona como un mecanismo de compresión de memoria que mejora la respuesta en sistemas con cantidades limitadas de moemoria. Zram se emplea en estos momentos por compañías de TV, Android 4.4, Cyanogenmod, Chrome OS, Lubuntu…

Zram entró en pruebas en Linux 2.6.33. En esta nueva versión del kernel zram deja de estar en pruebas ahora se encuentra en /drivers/block/zram.

1.3. Btrfs: propiedades del inodo

Esta nueva versión del kernel añada la capacidad de adjuntar los pares nombre/valor a los inodos como xattrs. El propósito de estos pares es almacenar las propiedades de los inodo tales como las compresión. Estas propiedades pueden ser heredadas. Eso quiere decir que cuando un directorio de inodo tiene propiedades heredables, estas se añaden asociadas con ellas y puede se heredadas desde su subvolumen padre. Esta versión del kernel implemente una propiedad específica llamada “compresión” cuyo valor puede ser “lzo” o “zlib” y es una propiedad heredable.

2. Núcleo

· Utilidad para analizar y optimizar el rendimiento de suspender/reanudar.

· futexes: incrementa el tamaño de la tabla hash para mejorar el rendimiento.

· Colas IPS: se eliminan los límites para la cantidad de colas “system-wide”.

· cpufreq: soporte para boost frequency.

3. Gestión de memoria

· /proc/meminfo: proprociona cantidad estimada de memoria dispnible.

· Se añade la variable “overcommit_kbytes sysctl” que permite una configuración más precisa que “overcommit_ratio”.

4. Virtualización

· Se añade soporte para Hyper-V

· virtio-net: se mejora el rendimiento del auto ajuste del tamaño del buffer rx.

· xen: balloon: se habilita para ARM.

5. Otros

· Soporte para el coprocesador criptográfico de AMD el cual se puede usar para acelerar las operaciones de cifrado tales como SHA, AES y otras.

·  Cambios en perf kvm, probe, record, report, script, timechart y tools.