Alguien escribió:
Entonces no en un futuro no se va atener que parchar el Kernel con el Patch RT, y todos los demás Kernels vendrán por default RT?
Eso es, ya no será necesario parchear el kernel o instalar un kernel parcheado precompilado. De hecho, el último parche PREEMP_RT es aplicable a 2.6.33. No existe para versiones posteriores. Y a partir de 2.6.39 deja de tener sentido porque toda su funcionalidad queda integrada en la línea principal del kernel.
Alguien escribió:
o tendrán alguna especie de "switch" por demanda de uso.
Seguirá siendo necesario configurar el script rtirq-init.
Recordar que con las versiones actuales del kernel, no siempre es necesario el parche PREEMP_RT. Depende de cada caso particular.
Por ejemplo, con una tarjeta firewire enchufada a una tarjeta ExpressCard donde el controlador de la tarjeta, el controlador firewire y quizás otros dispositivos comparten el mismo número de IRQ. En este caso, el kernel rt nos permite modificar la prioridad realtime de cada controlador por separado a través del comando "chrt -f -p prioridad pid", con lo cual evitamos xruns a baja latencia.
Para facilitarnos la vida, el script rtirq-init (disponible en los repos de debian / ubuntu y supongo que en otras distros) usa este comando de forma inteligente a partir de un archivo de configuración donde indicamos las prioridades del hardware que nos interesa (la tarjeta de audio, el controlador de la ExpressCard, el bus USB donde conectamos un disco duro que vamos a usar para nuestras grabaciones...).
Lo de los IRQ's y las prioridades realtime está explicado aquí:
http://subversion.ffado.org/wiki/IrqPriorities
Más información en castellano, aunque no se habla de rtirq-init:
http://www.soundebian.com.ar/2009/10/configurando-verdaderamente-el-real-time-para-audio/
Debate con el gran Rui sobre rtirq-init (el autor de rtirq-init, qsynth, qjackctl, qtractor, qmidinet...):
http://www.rncbc.org/drupal/node/107
Aquí otro resumen en castellano e ideas para configurar rtirq-init:
http://semicorchux.blogspot.com/2010/05/el-script-rtirq-en-ubuntustudio.html
La novedad es que todo esto funciona en el kernel 2.6.39 con sólo indicar el parámetro "irqthreads". Así que afirmaciones como:
rtirq-init only makes sense on a PREEMPT_RT patched kernel (a.k.a. realtime-preempt, Ingo Molnar's RT-patchset)... Otherwise it just does nothing.quote]
dejarán de tener validez en poco tiempo. Incluso si fue Rui quien lo dijo hace menos de tres años.
O sea, que si Ardour ocupa extensiones RT, entonces el Kernel sabiamente asignara las extensiones adecuadas?[/quote]
No, la prioridad realtime de ardour (al menos del thread de ardour que habla con jack), como buen cliente de jack, viene dada por jack. Eso ya se consigue ahora con un kernel genérico siempre que el usuario que lanza jack tenga prioridad de realtime (el famoso rtprio en limits.conf).
Saludos, Pablo