Hay muchas maneras de programar el trabajo en el kernel de Linux: temporizadores, tareas, colas de trabajo e hilos del kernel. ¿Cuáles son las pautas para cuándo usar uno frente a otro?Cuándo usar hilos del kernel vs pistas de trabajo en el núcleo de Linux
Hay los factores obvios: funciones de temporizador y tasklets no pueden dormir, así que no pueden esperar en exclusiones mutuas variables de condición, etc.
¿Cuáles son los otros factores en la elección de qué mecanismo para nosotros en un conductor?
¿Cuáles son los mecanismos preferidos?
¿Cómo elegiría entre usar un hilo del núcleo y una cola de trabajo? –
Bueno, la intención detrás de la creación de las workqueues era que reemplazarían parcialmente los hilos del kernel como un medio para programar tareas en el kernel (las últimas son las últimas). una caja se vuelve costosa de administrar. Teniendo esto en cuenta, creo que, en general, preferiría las pistas de trabajo sobre los hilos del kernel para la mayoría de los propósitos. –