Kernel monolítico
Keywords: Kernel monolítico, Sistema operativo
En el kernel monolítico', todas las funcionalidades posibles están integradas en el sistema operativo. Se trata de un programa de tamaño considerable que deberemos recompilar por completo cada vez que queramos añadir una nueva posibilidad.
Un Sistema Operativo de este tipo no tiene una estructura clara y bien definida. Todos sus componentes se encuentran integrados en un único programa (el Sistema Operativo) que ejecuta en un único espacio de direcciones. En este tipo de Sistemas todas las funciones que ofrece el Sistema operativo se ejecutan en modo núcleo.
Estos Sistemas Operativos han surgido, normalmente, de Sistemas Operativos sencillos y pequeños a los que se les ha ido añadiendo un número mayor de funcionalidades. Esto les ha hecho evolucionar y crecer hasta convertirlos en programas grandes y complejos formados por muchas funciones situadas todas ellas en un mismo nivel. Ejemplos claros de este tipo de Sistemas son MS-DOS y UNIX. Ambos comenzaron siendo pequeños Sistemas Operativos, que fueron haciéndose cada vez más grandes debido a la gran popularidad que adquirieron.
El problema que plantean este tipo de Sistemas radica en lo complicado que es modificar el Sistema Operativo para añadir nuevas funcionalidades y servicios. En efecto, añadir una nueva característica al Sistema Operativo implica la modificación de un gran programa, compuesto por miles de líneas de código fuente y funciones, cada una de las cuales puede invocar a otras cuando así lo requiera. Además en este tipo de Sistemas no se sigue el principio de ocultación de la información. Para solucionar este problema es necesario dotar de cierta estructura al Sistema Operativo.
