¿Cuál es el propósito del enhebrado M: N (híbrido)?

12

En otras palabras, ¿qué ventajas tiene el subproceso híbrido sobre el subproceso 1: 1 (solo kernel) y N: 1 (solo usuario)?

Este es un seguimiento de ¿Cuál es la diferencia entre los hilos de nivel de usuario y los hilos de nivel de kernel?

Sheldon
fuente
1
Explique brevemente los conceptos o enlace a las referencias apropiadas.
Raphael
3
Um, que obtienes los beneficios de ambos? (@Raphael Done.)
Gilles 'SO- deja de ser malvado'
Además, el artículo de Wikipedia parece enumerar alguna (des) ventaja. ¿Qué buscas específicamente?
Raphael

Respuestas:

7

Creo que el subproceso híbrido es muy similar a un grupo de subprocesos .

NMMN

La ventaja sobre los subprocesos de solo usuario es que puede aprovechar múltiples CPU o múltiples núcleos de CPU. Y si una tarea se bloquea, puede crear otro subproceso del núcleo para utilizar la CPU disponible de manera más eficiente.

Por lo tanto, obtiene las ventajas de ambos enfoques, a expensas de alguna programación adicional en modo de usuario.

Una desventaja sobre la programación solo del núcleo es posiblemente una latencia mayor: si todos los subprocesos del grupo están ocupados y agrega una nueva tarea corta, puede esperar mucho tiempo antes de que comience a ejecutarse.

svick
fuente