Activaciones del programador


Las activaciones del programador son un mecanismo de subprocesos que, cuando se implementan en el programador de procesos de un sistema operativo , proporcionan funcionalidad de subprocesos a nivel de kernel con flexibilidad y rendimiento de subprocesos a nivel de usuario. Este mecanismo utiliza una estrategia denominada "N: M" que asigna un número N de subprocesos de aplicación a un número M de entidades del núcleo, o "procesadores virtuales". Este es un compromiso entre subprocesos a nivel de kernel ("1: 1") y a nivel de usuario ("N: 1"). En general, los sistemas de subprocesos "N: M" son más complejos de implementar que los subprocesos del kernel o del usuario, porque se requieren tanto cambios en el kernel como en el código de espacio de usuario.

Las activaciones del programador fueron propuestas por Anderson, Bershad, Lazowska y Levy en Activaciones del programador: soporte efectivo del kernel para la gestión del paralelismo a nivel de usuario en 1991. El soporte fue implementado en el kernel de NetBSD por Nathan Williams [1] pero desde entonces ha sido abandonado en favor de enhebrado 1: 1. [2] FreeBSD tenía una implementación de subprocesos similar llamada Entidades programadas del núcleo que también se está retirando a favor del subproceso 1: 1. Las activaciones del programador también se implementaron como un parche para el kernel de Linux por Vincent Danjean: Activaciones de Linux , la parte a nivel de usuario se realiza en elBiblioteca de hilos de Marcel .