El Núcleo (o
kernel) es una colección de módulos de software que se ejecutan en forma
privilegiada –lo que significa que tienen acceso pleno a los recursos del
sistema. El núcleo normalmente representa sólo una pequeña parte de lo que por
lo general se piensa que es todo el sistema operativo, pero es tal vez el
código que más se utiliza. Por esta razón, el núcleo reside por lo regular en
la memoria principal, mientras que otras partes del sistema operativo son
cargadas en la memoria principal sólo cuando se necesitan.
El núcleo de un
sistema operativo normalmente el código necesario para realizar las siguientes
funciones:
• Manejo de
interrupciones.
• Creación y
destrucción de procesos.
• Cambio de
estado de los procesos.
• Despacho.
• Suspensión y
reanudación de procesos.
• Sincronización
de procesos.
• Comunicación
entre procesos.
• Manipulación
de los bloques de control de procesos.
• Apoyo para las
actividades de entrada/salida.
• Apoyo para
asignación y liberación de memoria.
• Apoyo para el
sistema de archivos.
• Apoyo para el
mecanismo de llamada y retorno de un procedimiento.
• Apoyo para
ciertas funciones de contabilidad del sistema.
El Kernel
consiste en la parte principal del código del sistema operativo, el cual se
encargan de controlar y administrar los servicios y peticiones de recursos y de
hardware con respecto a uno o varios procesos, este se divide en 5 capas: