Saltar al contenido

¿Qué son exactamente los encabezados del kernel de Linux?

Solución:

Los archivos de encabezado definen una interfaz: especifican cómo se definen las funciones en el archivo fuente.

Se utilizan para que un compilador pueda comprobar si el uso de una función es correcto ya que la firma de la función (valor de retorno y parámetros) está presente en el archivo de encabezado. Para esta tarea, no es necesaria la implementación real de la función.

Puede hacer lo mismo con las fuentes completas del kernel, pero instalará muchos archivos innecesarios.

Ejemplo: si quiero usar la función

int foo(double param);

en un programa no necesito saber cómo la implementación de foo es decir, solo necesito saber que acepta un solo parámetro (double) y devuelve un número entero.

Como se indicó, los archivos de encabezado definen interfaces para funciones, así como estructuras utilizadas por programas.

En el caso de los archivos de encabezado del kernel, estas funciones y estructuras están dentro del kernel mismo.

Si está construyendo un kernel completo, entonces, obviamente, necesita los archivos fuente completos, no solo los encabezados. Sin embargo, si está compilando un controlador de dispositivo u otro módulo cargable que se vincule al kernel, solo necesita los archivos de encabezado, por lo que puede ahorrar espacio al no instalar las fuentes completas.

La separación de paquetes para que pueda instalar solo los archivos de encabezado es en parte histórica, ya que la diferencia en el uso del disco solía ser una consideración importante cuando los discos eran más pequeños. En estos días, tener toda la fuente en disco (innecesariamente) no sería una consideración importante en cuanto al espacio en disco.

El término archivos de encabezado se origina en el C lenguaje de programación utilizado para escribir el kernel de Linux.

Para explicarlo desde un nivel muy alto …

En C, necesita tener un declaración anticipada de una función antes de usarla. En otras palabras, una descripción de la función, sus parámetros y qué tipo de datos devuelve. Es una práctica común poner todas las declaraciones de reenvío en un solo archivo llamado encabezamiento. Los archivos de código fuente para otros programas pueden include este encabezado y tener acceso a todas las funciones en el ejecutable del programa resultante una vez que haya sido compilado.

Los archivos de encabezado de Linux son todos los .h archivos que contienen las funciones que proporciona el kernel de Linux que se pueden llamar desde otros programas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *