Lo que traerá el Kernel 2.6.25

  • RCU "apropiativo" (preemptible): RCU es un sistema de sincronización que permite a Linux escalar a máquinas con miles de procesadores. Sin embargo, una parte del sistema de RCU no es "apropiativo", es decir, no puede ser interrumpido mientras se ejecuta. En 2.6.25 se puede elegir entre el RCU clásico y el nuevo, que es apropiativo. Este nuevo sistema ha sido desarrollado a la sombra de los esfuerzos que tratan de hacer que Linux sea un SO de tiempo real.
  • Real Time Group scheduling: En el Kernel 2.6.24 se introdujo un sistema que permitía organizar las prioridades de CPU de manera mucho mas flexible. En el 2.6.25 se ha extendido este sistema para que pueda manejar, además de los procesos "normales", los procesos SCHED_RT, es decir, de tiempo real, y trate de satisfacer sus necesidades especiales. (Además de esto, se ha mejorado el sistema de balanceo de procesos entre CPUs del gestor de procesos, para gestionar mejor las necesidades de los procesos de tiempo real - como se puede ver, hay mucho movimiento alrededor de este tema)
  • Memory Resource Controller: Basado en la misma infraestructura de configuración que el anterior punto (cgroups), esto permite configurar algunos aspectos de la utilización del recurso de la memoria a grupos de procesos elegidos al azar.
  • Spinlocks FIFO: Los spinlocks son una de las principales herramientas de sincronización en Linux: cuando un proceso adquiere un spinlock, hasta que no lo suelte el resto de CPUs que intente adquirirlo a petición de un proceso entrará en un bucle cerrado. Con los nuevos Spinlocks FIFO (solo x86), las CPUs consiguen permiso para adquirir el spinlock en el mismo orden en el que le solicitaron por primera vez. Esto permite asegurar que ninguna CPU es discriminada por otras y hace que los spinlocks sean un poco más deterministas.
  • Nuevas herramientas de medición de memoria: En el 2.6.25 cada proceso exporta en /proc información sobre las páginas que ese proceso está utilizando. Comparando esa información con la de otros procesos se puede conocer con mayor exactitud el uso de memoria de cada proceso.
  • timerfd(): Tradicionalmente en Unix las notificaciones de eventos del temporizador se hacen mediante señales, lo cual es muy engorroso. Para solucionarlo, los sistemas UNIX modernos han incorporado sistemas, como FreeBSD/OSX con kevent, y Solaris con un sistema similar. En linux se ha optado por una solución más "unixera": con timerfd() se pueden programar eventos en el temporizador, obtener un descriptor de archivo, y utilizar poll/epoll/read con esos descriptores.
  • Latencytop: Se trata de una pequeña infraestructura que permite visualizar cuales son las fuentes de latencia máxima en el Kernel. El programa para poder verlas se encuentra en latencytop.org.
  • SMACK (Simplified Mandatory Access Control): Se trata de un sistema de seguridad basado en los mismos principios que SELinux, pero menos capaz y más sencillo de configurar. Al igual que Linux tiene varios sistemas de archivos, ahora tambien habrá varios sistemas de seguridad para que la gente elija el que más le convenga, visto que SELinux no complace a todo el mundo.
  • Randomización de ejecutables PIE y del BRK: La ubicación de la memoria manejada por brk() y por ciertas secciones de los ejecutables PIE (Position Independent Executable) se decide de manera aleatoria.
  • Actualización de Ext4: Asignación múltiple de bloques, mayor tamaño máximo de bloque, checksumming en el journal, soporte de sistemas de archivos y archivos de mucho mayor tamaño. Con esta actualización ya esta casi todo de lo que traerá Ext4, de hecho ya están todas las que cambian de algun modo el formato del sistema de archivos en el disco, pero aun faltan algunas como delayed allocation.
  • Arquitectura MN10300/AM33: Soporte para una nueva arquitectura que no la conoce ni el que la inventó.
  • Regulación Termal de ACPI: No se exactamente lo que hace, pero Linux lo soporta. Adicionalmente se añade soporte para WMI, una extensión propietaria de ACPI hecha por Microsoft.
  • Protocolo CAN: Para sorpresa de todos, Volkswagen ha decidido contribuir con una implementación de CAN (Controller Area Network), un protocolo de red muy raro.

El resumen original de este artículo fué publicado en Linux Kernel Newbies.

  • Artículo completo en D'Oh!.

Ayuda a compartir esta noticia :

Delicious

Menéame

13.814

Subscripciones

Subscríbete por RSS o por E-mail

Nonaino

1

Nonaino

07/04/2008 11:36

EL CAN no es un protocolo tan raro, se utiliza en cantidad de aplicaciones industriales desde hace años y (como no) en la mayoría de los automóviles modernos como protocolo de comunicación entre dispositivos: inyección, ESD, ABS, Airbag, RadioCD, mandos al volante, etc.

juan_manu

2

juan_manu

07/04/2008 13:25

"Arquitectura MN10300/AM33: Soporte para una nueva arquitectura que no la conoce ni el que la inventó." por dios lo que rei con esto!!!!!!

Wido

3

Wido

07/04/2008 13:27

en base al comentario de nonaino......se imaginan el nuevo peugeot 907 con su linux embebido para manejo integral del coche?!?!

Sergio

4

Sergio

07/04/2008 15:15

Latencytop esto es lo que me resulto mas interesante para mi :)

ademas sin contar que estan mejorando mucho el soporte de placas wi fi y el tema de integracion con notebooks

saludos

Nonaino

5

Nonaino

08/04/2008 12:06

[OT] contestando a Wido: Esto me recuerda un viejo post sobre el automóvil de "un fabricante de soft". Espero que llegue antes el automóvil de Linux ya que el "fabricante de soft" ya controla el soft de las centralitas de F1. Además con Linux quizá la gasolina fuese "Free fuel" :-) Ahora en serio, la confianza de VW hacia Linux para implementar el CAN en el Kernel demuestra que nuestro querido OS del pingiuino no es tan marginal como algunos quieren hacer ver.

Jijitus

6

Jijitus

10/04/2008 08:05

Sí, soporte de WiFi y de laptops... en este tema hay todavía grandes faltantes, como tener que usar el driver de Windows de una placa de red a través de ndiswrapper en lugar de tener un driver nativo de Linux porque se usa un sistema de 64bits. O tener que usar Firefox de 32 bits para poder ver Flash decentemente (el nspluginwrapper usa demasiada CPU = gasta más energía)

Nuevos comentarios deshabilitados o noticia archivada.