Definición: ¿Qué significa Kernel?
Un kernel es el componente central de un sistema operativo. Utilizando comunicación entre procesos y llamadas al sistema, actúa como un puente entre las aplicaciones y el procesamiento de datos realizado a nivel de hardware.
Cuando un sistema operativo se carga en la memoria, el kernel se carga primero y permanece en la memoria hasta que el sistema operativo se apaga nuevamente. El kernel es responsable de tareas de bajo nivel como la administración de discos, la administración de tareas y la administración de memoria.
Techinfo explica Kernel
El núcleo de una computadora se interconecta entre los tres componentes principales del hardware de la computadora, proporcionando servicios entre la aplicación / interfaz de usuario y la CPU, la memoria y otros dispositivos de E / S de hardware.
El kernel proporciona y administra los recursos informáticos, lo que permite que otros programas se ejecuten y utilicen estos recursos. El kernel también configura el espacio de direcciones de memoria para aplicaciones, carga archivos con código de aplicación en la memoria, configura la pila de ejecución para programas y se ramifica a ubicaciones particulares dentro de los programas para su ejecución.
El kernel es responsable de:
- Gestión de procesos para la ejecución de aplicaciones
- Gestión, asignación y E / S de memoria
- Gestión de dispositivos mediante el uso de controladores de dispositivos
- Control de llamadas al sistema, que es esencial para la ejecución de los servicios del kernel.
Hay cinco tipos de granos:
- Kernels monolíticos: todos los servicios del sistema operativo se ejecutan a lo largo del hilo principal del kernel en un kernel monolítico, que también reside en la misma área de memoria, lo que proporciona un acceso de hardware potente y rico.
- Microkernels: Defina una abstracción simple sobre hardware que usa primitivas o llamadas al sistema para implementar servicios mínimos de SO, como multitarea, administración de memoria y comunicación entre procesos.
- Kernels híbridos: ejecute algunos servicios en el espacio del kernel para reducir la sobrecarga de rendimiento de los microkernels tradicionales donde el código del kernel todavía se ejecuta como un servidor en el espacio del usuario.
- Nano kernels: simplifique el requisito de memoria delegando servicios, incluidos los básicos, como controladores de interrupción o temporizadores, a controladores de dispositivos.
- Exo Kernels: asigna recursos de hardware físico, como el tiempo del procesador y el bloque de disco, a otros programas, que pueden vincularse a los sistemas operativos de la biblioteca que usan el kernel para simular abstracciones del sistema operativo.