GLOSARIO

¿Qué es un kernel?

  Esta página ha sido traducida automáticamente por DeepL. Switch to English

El núcleo es el corazón de un sistema operativo, la pieza que se encuentra entre tus aplicaciones y tu hardware. Gestiona los recursos de tu ordenador (CPU, memoria, almacenamiento, dispositivos) y ofrece una forma segura y coherente para que el software los utilice. Piensa en él como un policía de tráfico y un traductor que mantiene todo en movimiento sin colisiones.

Kernel_Layout.svg

¿Qué hace realmente el núcleo?

A alto nivel, el núcleo:

  • Los horarios funcionan. Decide qué programa obtiene tiempo de CPU y cuándo.
  • Gestiona la memoria. Mantiene separados los datos de cada aplicación y asigna RAM según sea necesario.
  • Gestiona dispositivos y archivos. Se comunica con los controladores de la GPU, SSD, tarjeta de red y sistemas de archivos.
  • Media las operaciones de E/S. Lee y escribe archivos y datos de red en nombre de las aplicaciones.
  • Garantiza la seguridad. Separa el modo usuario (aplicaciones) del modo kernel (el núcleo del sistema operativo) para que una aplicación defectuosa no pueda bloquear todo el sistema.
image-406

¿El núcleo es lo mismo que el sistema operativo?

No exactamente. El «sistema operativo» suele incluir el núcleo más las herramientas y servicios del espacio de usuario (shells, bibliotecas, entornos de escritorio, servicios en segundo plano, etc.). En el lenguaje cotidiano, la gente confunde los términos, pero, estrictamente hablando, el núcleo es solo el núcleo privilegiado en el que se basa todo lo demás.

¿Cómo «se comunican» las aplicaciones con el núcleo?

Cuando una aplicación necesita guardar un archivo o enviar un paquete de red, realiza una llamada al sistema, una solicitud controlada que pasa del modo de usuario al modo de kernel. El kernel comprueba los permisos, envía la solicitud al subsistema o controlador adecuado y devuelve el resultado a la aplicación. Este límite mantiene las aplicaciones seguras entre sí y frente a los bordes afilados del hardware.

infra-sync

¿Existen diferentes tipos de kernels?

Sí. Verás algunos diseños generales que se comentan:

  • Los núcleos monolíticos agrupan los servicios básicos y muchos controladores. (Ejemplo: el núcleo Linux).
  • Los microkernels mantienen el núcleo pequeño y trasladan más servicios fuera del kernel para aislarlos.
  • Los enfoques híbridos o modulares combinan ideas prácticas; los sistemas suelen introducir o extraer componentes del núcleo para mejorar el rendimiento o la seguridad.

Todos ellos persiguen el mismo objetivo: un control fiable y rápido del hardware. (El XNU de Apple, por ejemplo, combina un microkernel Mach con una capa BSD; Windows documenta una arquitectura de kernel en capas).

¿Alguna vez actualizo «el núcleo» directamente?

Depende de tu plataforma:

  • Windows/macOS: Las actualizaciones del kernel se incluyen en las actualizaciones normales del sistema operativo.
  • Linux y muchos servidores/dispositivos: el kernel es un paquete independiente que se puede actualizar a través de la distribución o el proveedor. Los kernels con soporte a largo plazo (LTS) sacrifican nuevas funciones en favor de la estabilidad.

Las actualizaciones aportan compatibilidad con el hardware, ajustes de rendimiento y correcciones de seguridad, pero en los sistemas de producción lo habitual es probarlas primero.

¿Qué ocurre durante el arranque?

Versión muy resumida: primero se ejecuta el firmware/UEFI, el gestor de arranque carga el kernel en la memoria, el kernel inicializa el hardware y los controladores, monta el almacenamiento y, a continuación, inicia el primer proceso del espacio de usuario que activa el resto del sistema. Después, programa continuamente el trabajo y gestiona las E/S en segundo plano.

¿Mi teléfono tiene un kernel?

Por supuesto. Los teléfonos Android, las consolas de videojuegos, los routers y la mayoría de los televisores inteligentes funcionan con algún tipo de sistema operativo con un núcleo interno. El concepto no se limita a los ordenadores de sobremesa y portátiles.

android kernel

¿Por qué los fallos se denominan «kernel panics» (o «pantalla azul»)?

Si algo falla dentro del núcleo (como un error crítico del controlador), el sistema operativo suele detenerse en lugar de arriesgarse a corromper los datos. Los sistemas tipo Unix informan de un error grave del núcleo; Windows muestra un error de detención (la «pantalla azul»). Es dramático, pero es una medida de seguridad de última instancia que protege tus archivos.

Resumen rápido

  • El núcleo es el núcleo privilegiado del sistema operativo que gestiona la CPU, la memoria, los dispositivos y la E/S.
  • Las aplicaciones interactúan con él a través de llamadas al sistema que cruzan la frontera entre el modo usuario y el modo kernel.
  • Los diferentes diseños de kernel (monolítico, microkernel, híbridos) equilibran el rendimiento, el aislamiento y la facilidad de mantenimiento.

Términos relacionados

  • Espacio de usuario / Espacio del núcleo: Regiones donde se ejecutan las aplicaciones normales frente al núcleo.
  • Llamada al sistema (syscall): El punto de entrada controlado desde las aplicaciones a los servicios del núcleo.
  • Controlador: Componente del núcleo o del espacio de usuario que sabe cómo operar un dispositivo específico.
  • Programador: Componente del núcleo que decide qué subproceso se ejecuta a continuación.
  • Memoria virtual: Función del núcleo que proporciona a cada proceso su propio espacio de direcciones.
  • Bootloader: Programa que carga el kernel en la memoria al iniciar el sistema.
  • Error grave del núcleo/error de detención: un fallo fatal del modo del núcleo que detiene el sistema para evitar daños.

CONTENIDO RELACIONADO