2010-11-22 17 views
7

Hay three modelos de subprocesos que se utilizan en las implementaciones de programación de subprocesos generalmente realizadas por núcleos de sistema operativo. Uno de ellos es el modelo híbrido (M:N) en el que algunos subprocesos de la aplicación N se asignan a los hilos del kernel M para que puedan usar hasta M procesadores. Hay pros y contras para este modelo. Una de las ventajas es que los lenguajes que se basan en este modelo introducirán una implementación de planificador de nivel de idioma que es responsable de la administración y la programación de los subprocesos de nivel de aplicación.Modelo híbrido de subprocesos (M: N) Implementación

  • Me preguntaba si alguien sabe algún esfuerzo o trabajo que ya haya hecho esto para que un idioma o biblioteca pueda aprovecharlo.
  • Teniendo en cuenta, por ejemplo, el hecho de que Kernel 2.6.23+ utiliza un algoritmo llamado CFS para la programación, ¿cree que este modelo híbrido sería en absoluto un enfoque inteligente para invertir?

Respuesta

7

En primer lugar leer esto: http://www.kegel.com/c10k.html#1:1

Linux utiliza modelo 1: 1 de roscado a partir del kernel 2.6 (librería de hilos NTPL POSIX nativa) y hoy en día casi todos los sistemas operativos se trasladan a este modelo:

  • FreeBSD a partir de 7.0 si no me equivoco.
  • El inicio de Solaris para algunas versiones también se movió a 1: 1 - No recuerdo cuál.

Una vez que Linux tenía el modelo M: N (esto estaba en 2.4 NGPT) pero 1: 1 es generalmente superior.

El mayor problema con M: Modelo N es:

  1. difícil de implementar
  2. Cuando se utiliza el sistema de bloqueo de llamadas que en realidad necesita notificar algún modo kernel para bloquear el hilo espacio de un solo usuario y no del núcleo de un
  3. En la edad de múltiples núcleos, usted quiere tener la mayor cantidad de hilos del kernel que pueda.

Uno de ellos es el (M: N) híbrido modelo en el que algunos hilos N de una aplicación se asignan a algunos M procesadores disponibles.

pequeña corrección - N hilos de aplicación asignan a los hilos del núcleo M para que puedan utilizar hasta a los procesadores M.

+0

Gracias por el enlace, la buena respuesta y la corrección. – nobeh

Cuestiones relacionadas