Ihnen fehlt der module_init()
und module_exit()
Makros und einige wichtige #defines
. Wir benötigen außerdem weitere Informationen, z. B. Ihre make/gcc-Optionen. Möglicherweise wird das "ungültige Modulformat" gemeldet, weil Sie in 32-Bit kompilieren, wenn Ihr Kernel 64-Bit ist, stellen Sie also sicher, dass Sie das Kompilierungs- und Link-Flag -64 verwenden.
Ein großartiges Hallo-Welt-Tutorial für Kernel-Module finden Sie hier:http://archive.is/KNkEE (der ursprüngliche Link zum Artikel ist defekt).
Willkommen beim Schreiben von Kernel-Modulen. Sie machen viel Spaß im Vergleich zum Schreiben von Windows-Treibern (ich habe beides gemacht). Die Schnittstelle des Linux-Kernelmoduls ist viel einfacher zu verwenden und es gibt viele Basistreiber, an die Sie delegieren können, um die Arbeit schneller zu erledigen.