En la informática, ¿qué es un núcleo?
En la mayoría de los sistemas operativos de computadora, el núcleo es el componente central. Es el puente entre el usuario y las aplicaciones y el hardware de la computadora. También es el mecanismo que permite que la computadora maneje múltiples usuarios y múltiples tareas simultáneamente. Los tipos de núcleos son el núcleo monolítico, el microkernel, el núcleo híbrido, el nanokernel y el exokernel.
El kernel administra todos los recursos del sistema de la computadora. Esto incluye el almacenamiento a largo plazo, la unidad de procesamiento central (CPU), la memoria a corto plazo y los dispositivos de entrada y salida. Cuando una aplicación necesita uno de estos recursos, el núcleo pone a disposición el recurso y completa la solicitud.
Este manejo de recursos permite que los sistemas operativos sean múltiples y multitarea. El sistema operativo en realidad no realiza más de una tarea a la vez. En cambio, el núcleo cambia las tareas a una velocidad tan alta que la computadora parece estar realizando múltiples tareas. El kernel alPor lo tanto, es responsable de asegurarse de que los recursos utilizados por un usuario o proceso no sean violados la solicitud de otro usuario o proceso.
Hay dos tipos principales de núcleos son el núcleo monolítico y el microkernel. Los núcleos monolíticos emplean un método de supervisión de gestión de recursos en el que todos los servicios del sistema operativo se ejecutan en el mismo espacio de direcciones, llamado espacio del núcleo. Algunos núcleos monolíticos pueden cargar y descargar módulos ejecutables. Esto extiende las capacidades del sistema operativo y al mismo tiempo mantiene una cantidad mínima de código que se ejecuta en el espacio del núcleo en cualquier momento.
Los microkernels ejecutan solo la cantidad mínima de servicios del sistema operativo, como gestión de memoria, gestión de subprocesos y comunicación entre procesos en el espacio del núcleo. Todos los demás servicios, como controladores de dispositivos, interfaces de usuario y administración de archivos, se ejecutan en el espacio del usuario. El microkernelminimiza severamente la cantidad de código que se ejecuta en el modo kernel.
Un núcleo híbrido es una combinación del monolítico y los microkernels. La mayoría de los servicios del sistema del sistema operativo se ejecutan en el espacio del núcleo, como un núcleo monolítico. Hay otros servicios, como el sistema de archivos y el sistema de ventanas, que se ejecutan en el espacio del usuario.
Los otros tipos de núcleo son el nanokernel y el exokernel. El Nanokernel utiliza controladores de dispositivos para manejar casi todos los servicios. El Exokernel utiliza programas para asignar recursos físicos.