
Kernel

Kernel
Es el núcleo de un sistema operativo, se encarga de realizar toda la comunicación segura entre el software y el hardware del ordenador mediante las llamadas al sistema
Funciones:
- Procesamiento paralelo de diferentes tareas, el multitasking.
- Control de procesos o planificador (scheduler)
- Gestor de E/S.
- Sistema de archivos y controladores.
- Sistema de comunicación.
- Gestor de errores.
- Gestor de recursos de hardware o memoria.
- Seguridad.
- Controladores de dispositivos de hardware.
Tipos de Kernel:
- Kernel monolítico. Un kernel grande para todas las tareas. Es el único responsable de la gestión de la memoria y de los procesos, de la comunicación entre procesos y proporciona funciones de soporte de drivers y hardware. Los sistemas operativos que usan el kernel monolítico son Linux, OS X y Windows.
- Microkernel. El microkernel se ha diseñado intencionadamente de un tamaño pequeño para que en caso de fallo no paralice todo el sistema operativo. No obstante, para que pueda asumir las mismas funciones que un kernel grande, está dividido en varios módulos. Como ejemplo de aplicación solo existe el componente Mach de OS X, ya que hasta ahora no hay ningún sistema operativo con microkernel.
- Kernel híbrido. La combinación del kernel monolítico y el microkernel se denomina kernel híbrido. En este caso, el kernel grande se hace más compacto y modulable. Otras partes del kernel pueden cargarse dinámicamente. Esto ya ocurre en cierta medida en Linux y OS X.