En
informática, un
núcleo o
kernel (de la raíz
germánica Kern, núcleo, hueso) es un
software que constituye una parte fundamental del
sistema operativo, y se define como la parte que se ejecuta en
modo privilegiado (conocido también como modo núcleo). Es el principal responsable de facilitar a los distintos programas
acceso seguro al
hardware de la
computadora o en forma básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. Como hay muchos programas y el acceso al hardware es limitado, también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como
multiplexado. Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de
abstracciones del hardware. Esto permite esconder la complejidad, y proporcionar una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso al
programador.