Linux 2.6.25

Escrito por Ramón Rey (REFERENTA NO PAGA) en Noticia de Software el 20 de abril de 2008

TuxLinus Torvalds anunció recientemente la versión estable 2.6.25 del kernel de Linux, después de tres meses de desarrollo y con más de 12000 parches integrados en el proyecto.

Esta nueva versión incluye nuevos drivers y soporte de dispositivos entre los que destaca el soporte de dispositivos wireless Atheros (mediante el driver ath5k), mejoras en la implementación de características relacionadas con la ejecución en tiempo real, un nuevo framework de seguridad (SMACK) y una actualización del futuro sistema de archivos oficial (ext4, aún en desarrollo).

A continuación una explicación detallada de las principales novedades de la nueva versión del kernel de Linux:

Controlador de recursos de memoria (Memory Resource Controller): una característica construida sobre el framework de grupos de control que se introdujo en la versión anterior del kernel. Este framework tiene un API unificado que permite crear a modo de plugins diferentes añadidos al kernel que permiten gestionar los recursos del sistema de forma precisa. A modo de ejemplo, este framework permite añadir reglas para controlar la gestión de memoria o de procesos.

Un ejemplo de uso de este controlador de recursos de memoria sería el de una aplicación de grabación de dvds, que podría asegurarse la disponibilidad suficiente de memoria para que el proceso de grabación no falle.Tambien es posible definir la cantidad de memoria que un grupo de aplicaciones debe tener disponible siempre, algo que se podría usar para mejorar la experiencia de usuario al aplicarlo al entorno de escritorio.

Planificador de grupo en tiempo real (Real Time Group Scheduling): permite asignar prioridades del planificador de procesos al margen de las prioridades de ejecución típicas (nice) a  procesos que se ejecutan en tiempo real. Es una extensión del planificador de grupo que se implementó en la versión 2.6.24, que permite controlar grupos de procesos y asignarles diferentes prioridades de ejecución.

Soporte de RCU preventivo: RCU es una tecnología que permite ejecutar Linux en sistemas que disponen de muchos procesadores compartidos (actuando como si fueran un único procesador). En esta versión se ha añadido el soporte de multitarea preventiva a RCU, disminuyendo la latencia del sistema y haciendo Linux más amigable para ejecutar procesos en tiempo real.

FIFO ticket spinlocks (x86): hasta ahora cuando un proceso tomaba un spinlock, el resto de procesos que necesitaban apropiarse del mismo iban comprobando continuamente si estaba libre para usarlo. El proceso que terminaba tomando el spinlock se decidía de forma aleatoria con este procedimiento. A partir de la versión 2.6.25 los procesos que quieren acceder a un spinlock son ordenados según comprueban la disponibilidad del spinlock y se les asigna en orden, eliminando la necesidad de comprobaciones continuas.

Cálculo mejorado del uso de memoria de los procesos: se ha añadido un sistema más detallado de estadísticas de uso de memoria por parte de los procesos, haciendo que esté disponible un archivo por cada página de memoria física utilizada por cada proceso. A estas estadísticas acompañan nuevas herramientas para visualizar los datos.

Nueva llamada al sistema timerfd(): una característica implementada en la versión 2.6.22 que había sido desactivada por defecto hasta ahora por problemas planteados por los desarrolladores sobre su API. Esta llamada del sistema permite tener notificaciones sobre eventos temporizados que sean más completas que las señales típicas (poll(), epoll()). Lo que se ha implementado ahora es un API que permite tener un subsistema de notificaciones tipo BSD que notifica los eventos directamente a través de descriptores de archivo.

Integración de SMACK (Simplified Mandatory Access Control): a pesar de que el kernel de Linux ya tiene un framework de seguridad que implementa MAC (SELinux) se ha decidido integrar SMACK como una alternativa que sin ser tan potente es mucho más simple de configurar y administrar. Esta decisión fué tomada por parte de Linus Torvalds para permitir diferentes aproximaciones que sirvan para resolver el mismo problema de control de seguridad del sistema y para promover la competencia entre los diferentes proyectos, ante la prepotencia mostrada por lo desarrolladores de SELinux.

Nueva herramienta latencytop: se trata de una herramienta para desarrolladores, tanto del kernel como de aplicaciones, que permite monitorizar problemas de latencia e identificar los causantes de la misma para solucionarlos. Está pensado básicamente para identificar los casos en que se va a ejecutar un proceso que requiere cierto recurso, pero el recurso está bloqueado todavía e impide la ejecución del código que se pretende, provocando los efectos clásicos de los saltos de la reproducción de sonido o la falta de respuesta del entorno gráfico.

Aleatorización de ejecutables BRK y PIE: por parte del proyecto Exec-shield de RedHat se han introducido dos importantes mejoras de seguridad que hacen totalmente completo el sistema de ejecución aleatoria de procesos en arquitecturas x86 y x86_64.  Esta tecnología hace más difícil a los creadores de malware el predecir donde se alojarán los ejecutables y sus datos en memoria.

Soporte del procotolo Controller Area Network (CAN): se trata de un protocolo de red y bus de comunicaciones creado para la interoperabilidad entre microcontroladores y otro tipo de dispositivos sin la necesidad de un ordenador principal que controle el proceso. Este protocolo de red ha sido implementado y contribuido por Volkswagen.

Regulación térmica de ACPI / WMI: se ha añadido soporte de control térmico de ACPI y se ha implementado Windows Management Instrumentation, que es una extensión propietaria de Microsoft a ACPI diseñada para su modelo de drivers de Windows que implementa los estándares WBEM (Web Based Enterprise Management) y CIM (Common Information Model). Estos estándares están diseñados para la gestión de entornos distribuidos de computación.

Actualización de ext4: la próxima generación del sistema de archivos oficial de Linux se ha actualizado con las últimas características desarroladas. Entre las novedades se ha añadido soporte de un mayor tamaño máximo de archivo y de sistemas de archivos, un sistema de comprobación criptográfica de integridad del journal, versionado y atributos extendidos de inodos, localización de bloques múltiples y un mayor tamaño de bloques. Estas características implementadas son los últimos cambios que requieren una creación nueva del sistema de archivos para poder usarse. 

Nueva arquitectura soportada, MN10300/AM33: se ha añadido soporte de la arquitectura MN10300/AM33 de dispositivos embebidos fabricada por Panasonic.

Nuevo estado de las aplicaciones TASK_KILLABLE: se ha añadido un tercer estado a las aplicaciones en reposo, killable, que permite definir aplicaciones que únicamente se pueden interrumpir con una señal fatal. El ejemplo práctico claro es que se puede forzar la terminación de aplicaciones que intentan acceder a recursos que no se ponen disponibles nunca, como puede ocurrir en una conexión NFS.

Fuente: Linux Kernel Newbies Vía: LWN
  • Currently 5.0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

No hay comentarios

Escribe tu comentario

Si quieres dejar un comentario Inicia sesión o Registrate