¿Qué es el kernel en un sistema operativo? ¿Qué tipos de núcleos hay?
Descargue la herramienta de reparación de PC para encontrar rápidamente y reparar automáticamente los errores de Windows
Cada sistema operativo, ya sea Windows, Mac, Linux o Android, tiene un programa central llamado centro Actúa como el «jefe» de todo el sistema. ¡Es el núcleo del sistema operativo! El kernel no es más que un programa de computadora que controla todo lo demás. Todo lo que sucede en la computadora pasa por ella. En este artículo, discutiremos qué es un kernel en un sistema operativo y los diferentes tipos de kernels.
¿Qué es el kernel en un sistema operativo?
Ahora que sabemos que es el programa principal del sistema operativo, también debemos saber que también es el primer programa que se carga después del gestor de arranque. Luego hace toda la conversación entre el hardware y el software o aplicación. Entonces, si inicia un programa, la interfaz de usuario envía una solicitud al kernel. Luego, el kernel envía solicitudes a la CPU, memoria para asignar potencia de procesamiento, memoria y otras cosas para que la aplicación pueda ejecutarse sin problemas en la interfaz.
Puedes pensar en Kernel como un traductor. Traduce las solicitudes de entrada/salida del software en los conjuntos de instrucciones de la CPU y la GPU. En resumen, es la capa entre el software y el hardware la que hace que todo sea posible. El núcleo gestiona lo siguiente:
- CPU/GPU
- memoria
- entrada/salida o dispositivo IO
- Administracion de recursos
- gestión de la memoria
- Gestión de dispositivos
- llamada del sistema.
Los procesos de usuario solo pueden acceder al espacio del kernel mediante llamadas al sistema. Se producirá un error si el programa intenta acceder a él directamente.
leer: Diferencia entre modo kernel y modo usuario.
Seguridad y protección del núcleo
El kernel también protege el hardware. Sin protección, cualquier programa puede realizar cualquier tarea en su computadora, incluso fallar su computadora, corromper datos y más.
En las computadoras modernas, la seguridad se implementa a nivel de hardware. Por ejemplo, Windows no cargará un controlador que no sea de una fuente confiable y certificado con una firma. Secure Boot y Trusted Boot son ejemplos típicos.
Arranque seguro: Es un estándar de seguridad desarrollado por miembros de la industria de PC. Le ayuda a proteger su sistema de programas maliciosos al no permitir que se ejecute ninguna aplicación no autorizada durante el inicio del sistema. Esta función garantiza que su PC solo se inicie con el software en el que confía el fabricante de la PC. Por lo tanto, cada vez que se inicia su PC, el firmware verifica la firma de cada software de arranque, incluidos los controladores de firmware (ROM opcionales) y el sistema operativo. Si se verifica la firma, la PC se iniciará y el firmware entregará el control al sistema operativo.
Arranque de confianza: Utiliza un módulo de plataforma virtual de confianza (VTPM) para verificar la firma digital del kernel de Windows 10 antes de cargarlo. A su vez, confirma todos los demás componentes del proceso de inicio de Windows, incluidos los controladores de inicio, los archivos de inicio y ELAM. Si un archivo ha sido alterado o alterado en alguna medida, el gestor de arranque lo detecta y se niega a cargarlo identificándolo como un componente dañado. En resumen, proporciona una cadena de confianza para todos los elementos durante el inicio.
¿Cuáles son los tipos de núcleos?
El kernel también puede comunicarse con el hardware a través de cables seguros. Entonces, las empresas pueden desarrollar un kernel que pueda hablar con su hardware a través de un conjunto de botones. Tome la lavadora como ejemplo. Dependiendo de la perilla que mueva y cuánto tiempo la configure, un núcleo de nivel básico debería ser suficiente. Dicho esto, el kernel en sí puede volverse complejo con el tiempo, lo que lleva al tipo de kernel.
- Núcleo monolítico: Aquí, tanto el sistema operativo como el kernel se ejecutan en el mismo espacio de memoria, adecuado para lugares donde la seguridad no es muy importante. Da como resultado un acceso más rápido, pero bloquea todo el sistema si hay un error en el controlador del dispositivo.
- Micronúcleo: Es una versión simplificada del kernel monolítico que hace la mayor parte del trabajo por sí mismo y no requiere una GUI adicional. Deben usarse donde los sistemas de seguridad y bloqueo no suceden o no sucederán.
- Núcleo híbrido: Este núcleo es el que más vemos. Windows, macOS de Apple. Son una mezcla de monolíticos y microkernels. Elimina los controladores pero mantiene los servicios del sistema en el núcleo, de forma similar a como Windows carga los controladores cuando inicia el proceso de arranque.
- Nanonúcleo: Si necesita un kernel, pero la mayor parte de su funcionalidad se configura externamente, aquí es donde entra.
- Núcleo exo: Este kernel solo proporciona protección de procesos y manejo de recursos. Sin embargo, se usa principalmente cuando se prueban proyectos internos y se actualiza a un mejor tipo de kernel.
Hay mucho más en el kernel de lo que hemos discutido. La definición de kernel se vuelve más amplia y profunda a medida que profundiza.
Esperamos que este artículo haya sido fácil de entender y te haya ayudado a comprender los conceptos básicos.
sigue leyendo: Un mapa interactivo del kernel de Linux.
Recuerda que todos los datos aquí expuestos son solo una recopilación de internet, no debe ser usado como una fuente final.