¿Qué son las extensiones del núcleo?
Una extensión del núcleo es una pieza de software de computadora que se carga en el componente central de un sistema operativo. Las extensiones de núcleo podrían usarse para proporcionar funcionalidad o soporte de hardware que de lo contrario no sería parte del núcleo. Una extensión del núcleo a menudo puede realizar tareas o acceder a partes del sistema operativo que el software normal no puede. En algunos sistemas operativos, las extensiones del núcleo se denominan módulos de núcleo, o simplemente módulos.
En la mayoría de los sistemas operativos, el acceso a las redes, los sistemas de archivos y las llamadas del sistema están restringidos para mantener un sistema estable y seguro. Las extensiones del núcleo pueden acceder a estas funciones y sistemas porque se ejecutan como parte del núcleo. Un núcleo sin extensiones se conoce como núcleo base. Las extensiones se pueden agregar o eliminar del núcleo base.
Las extensiones permiten una mayor flexibilidad en las capacidades de un núcleo sin aumentar la complejidad del núcleo base. Por ejemplo, una extensión del núcleo podría ser LoaDED para habilitar las funciones de ahorro de energía apropiadas para computadoras portátiles. Estas características generalmente no están incluidas en el núcleo base porque el sistema operativo podría no usarse en una computadora portátil.
Las extensiones o módulos del núcleo también se pueden cargar y descargar dinámicamente, lo que significa que se agregan y se eliminan del núcleo según sea necesario. Esto permite a la computadora guardar memoria y otros recursos cuando la extensión no está en uso. Un adaptador de red universal de bus serial (USB) podría cargar sus controladores requeridos como extensiones de núcleo cuando se enciende, luego descargue las extensiones cuando se elimine el dispositivo.
Tienen más autoridad que otros programas, por lo que las extensiones y módulos del núcleo pueden causar problemas únicos. Un controlador de dispositivo mal codificado que se ejecuta como una extensión del núcleo podría hacer que todo el sistema se bloquee. Por esta razón, a menudo se les alienta a los desarrolladores de software a usar extensiones de núcleo solo cuandono hay alternativa.
Para la mayoría de los usuarios, la configuración de extensiones ocurre automáticamente. Algunos usuarios, especialmente aquellos que usan sistemas operativos particulares, administran la extensión del núcleo o los módulos mismos. Hay variaciones en las versiones de los núcleos, por lo que la extensión y los módulos pueden no ser compatibles con todos los núcleos o todos los sistemas operativos.