Núcleo monolítico

Definición - ¿Qué significa Núcleo Monolítico?

Un kernel monolítico es un marco de software del sistema operativo que tiene todos los privilegios para acceder a dispositivos de entrada / salida (E / S), memoria, interrupciones de hardware y la pila de CPU. Los núcleos monolíticos tienden a ser más grandes que otros núcleos porque se ocupan de muchos aspectos del procesamiento informático en el nivel más bajo y, por lo tanto, deben incorporar código que interactúe con muchos dispositivos, canales de interrupción y E / S y otros operadores de hardware.

Esta forma de kernel es la base para Linux, Unix, MS-DOS y Mac OS. Los sistemas operativos más nuevos suelen utilizar un kernel híbrido para facilitar el mantenimiento y las mejoras del sistema operativo.

Techinfo explica el núcleo monolítico

Los núcleos monolíticos conservan el acceso con privilegios completos sobre los diversos componentes bajo su control. Éstas incluyen:

  • Sistemas de archivos
  • Comunicación entre procesos
  • Gestión de E / S y dispositivos
  • Gestión de procesos fundamentales
  • Hardware

La razón por la que se prefieren las arquitecturas de kernel más nuevas, como el microkernel o el diseño de kernel híbrido, es porque cuanto más grande se vuelve el kernel, más funciones debe asumir. Esto hace que el código sea engorroso y más lento de cargar. Otro inconveniente del diseño del kernel monolítico es que el código del kernel debe modificarse para agregar funciones o corregir errores. Esto normalmente requiere la recompilación del código del kernel y los controladores de hardware; incluso puede significar una actualización completa del sistema operativo, que es costosa y reduce la confianza del usuario.

Las arquitecturas de kernel más nuevas solo conservan el acceso a privilegios limitados y transfieren privilegios al espacio del usuario a través de servidores, que brindan administración de recursos de forma independiente con privilegios propios. Estos servidores se ejecutan fuera del espacio de memoria del kernel, lo que permite tamaños de kernel mucho más pequeños y una ruta de actualización mucho más eficiente.

La arquitectura de kernel monolítica todavía se usa para sistemas como los basados ​​en Linux, donde un kernel en evolución que se actualiza y reemplaza constantemente es parte de la cultura del sistema operativo. La naturaleza optimizada de Linux ha mantenido su kernel monolítico a un tamaño aceptable, lo que facilita la adición de funciones.