Tengo un par de años de experiencia en programación. Ahora decidí trabajar para el desarrollo del módulo de kernel de Linux. Sin embargo, ni siquiera puedo comenzar. He compilado este código en ubuntu. Sin embargoCómo codificar un módulo kernel de Linux?
#include <linux/module.h>
int init_module(void){ printk("<1> hellp"); return 0;}
void cleanup_module(void){ printk("<1> bye");}
, el insmod no funciona el mensaje de error es "formato de módulo no válido". después de googlear pensé que podría ser un problema con la compatibilidad de la versión. Y no hay una buena manera de resolverlo. Entonces, ¿algún desarrollador real de módulos kernel puede darme algún consejo? ¿Qué entorno debo preparar antes de comenzar a aprender?
Gracias!
* "Te faltan las macros __init y __exit, ..." * - El uso de '' __init' y __exit' no son necesarios; solo especifican secciones de texto que se pueden liberar después de que se haya completado el arranque. Lo que se requiere para un módulo de controlador son declaraciones para dos puntos de entrada utilizando 'module_init()' y 'module_exit()'. – sawdust