Núcleo monolítico

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
Estructura de núcleo monolítico, micronúcleo y núcleo híbrido.
Vista gráfica general de un núcleo monolítico.

En computación, un núcleo monolítico es un tipo de núcleo o kernel de un sistema operativo que comprende un núcleo grande y complejo donde se concentran todas las funcionalidades posibles (planificación, sistema de archivos, redes, controladores de dispositivos, gestión de memoria, etc).

Éste núcleo está programado de forma no modular y puede tener un tamaño considerable. A su vez, cada vez que se añada una nueva funcionalidad, deberá ser recompilado en su totalidad y luego reiniciado. Todos los componentes funcionales del núcleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Por ende, un error en una rutina podría propagarse a todo el sistema.

Hay diversas ramificaciones de este diseño, que se han ido amoldando a nuevas necesidades. Existen sistemas que, en tiempo de ejecución, permiten la carga dinámica de módulos ejecutables, lo cual le brinda al modelo de núcleo monolítico algunas de las ventajas de un micronúcleo. Dichos módulos pueden ser compilados, modificados, cargados y descargados en tiempo de ejecución, de manera similar a los servicios de un micronúcleo, pero con la diferencia de que se ejecutan en el espacio de memoria del núcleo mismo (anillo 0). De esta forma, es probable que un bloqueo del módulo bloquee todo el núcleo. Además, el módulo pasa a formar un todo con el núcleo, usando la API del mismo, y no se emplea un sistema de mensajes como en los micronúcleos. Este es el esquema usado por, entre otros, Linux, FreeBSD y varios derivados de UNIX.

La alternativa es tener una estructura de micronúcleo, donde las partes funcionales están divididas en unidades separadas con mecanismos de comunicación estrictos entre ellos. Cabe resaltar que el paso constante de mensajes entre los servicios del micronúcleo, es en parte responsable del pobre rendimiento de esta estructura.

Sistemas operativos con núcleos monolíticos[editar]

Entre los sistemas operativos que cuentan con núcleos monolíticos se encuentran:

Referencias[editar]

Véase también[editar]