Construyendo módulos kernel para diferentes versiones de linux.

Soy nuevo en la escritura de módulos del kernel, por lo que me enfrento a pocos problemas no técnicos.

Ya que para crear el módulo del kernel para una versión específica del kernel (por ejemplo, 3.0.0-10, 10 es el número de parche) se requieren los mismos encabezados del kernel de la versión, por lo que parece sencillo instalar los encabezados del kernel y comenzar el desarrollo allí. Pero los encabezados del kernel para la versión del kernel parcheado no están disponibles. Como tengo un kernel invitado vmlinuz-3.0.0-10 ejecutando en la máquina y al descargar los encabezados del kernel, dice que no se ha encontrado.

otro enfoque es obtener la fuente para ese kernel específico, pero nuevamente, el problema es que la misma fuente para el kernel parcheado no está disponible (no es necesario para obtener fuentes de linux-kernel-3.0.0-10 o incluso linux-kernel-3.0.0 y décimo parche). En alguna situación, es posible obtener el origen del kernel en ejecución, pero no siempre es posible.

otra es construir un kernel que no sea el kernel en ejecución y colocar el kernel construido en la máquina. Pero requiere construir los módulos de ese núcleo que requiere mucho tiempo y es un proceso que consume espacio.

Por lo tanto, la intención de preguntar esto es saber cuáles son las preferencias de los desarrolladores de controladores de kernel. ¿Hay otras alternativas?

¿Es posible compilar el módulo del kernel en una versión y ejecutarlo en otra versión (aunque va a dar un error, pero hay alguna solución para esto?)

Respuestas a la pregunta(3)

Su respuesta a la pregunta