Ti manca il module_init()
e module_exit()
macro e alcuni #defines
cruciali . Abbiamo bisogno anche di più informazioni come le tue opzioni make/gcc. Potrebbe segnalare il "formato del modulo non valido" perché stai compilando a 32 bit quando il tuo kernel è a 64 bit, quindi assicurati di utilizzare il flag -64 di compilazione e collegamento.
Un ottimo tutorial hello world per i moduli del kernel si trova qui:http://archive.is/KNkEE (il collegamento originale all'articolo è interrotto).
Benvenuti a scrivere moduli del kernel. Sono molto divertenti rispetto alla scrittura di driver Windows (ho fatto entrambi). L'interfaccia del modulo del kernel Linux è molto più semplice da usare e ci sono molti driver di base a cui puoi delegare e portare a termine il lavoro più velocemente.