Der Kernel und seine Module

06/02/2008 - 22:42 von Nico Hoffmann | Report spam
hallo,

ich werfe gerade einen vorsichtigen Blick in
<http://mirrors.kernel.org/LDP/LDP/l....html>.
Nein, nicht dass ich jetzt Kernel-Hacker werden möchte, sondern mehr
so aus Neugier :-)

Da wird also für mich halbwegs vestàndlich beschrieben, wie man so ein
Modul schreibt, kompiliert und in den Kernel làdt. Aus Sicht der
Kernels findet sich da recht wenig. Der Modul-Quelltext wird
kompiliert, geladen - und fertig.

Muss denn nicht auch der Kernel eine irgendwie passende Schnittstelle
für ein bestimmtes Modul haben, um es laden zu können?

Will sagen: Kann ich denn einfach so ein 'Hello-Wold'-Modul schreiben,
ein 'hello-1.ko' draus kompilieren und in den Kernel laden, ohne einen
darauf abgestimmten Kernel kompiliert zu haben?
Das hieße ja doch, ich könnte dieses Modul auf jedem beliebigen (2.4er
oder 2.6er) Linux-System kompilieren und in den gerade laufenden
Kernel laden, solange nur ladbare Module unterstützt werden?

Einfach ausprobieren kann ichs nicht, weil ich im Moment kein
Testsystem zur Verfügung habe...

N.
<Nutzdatenbegleiter: 0x00>
 

Lesen sie die antworten

#1 Joern Abatz
07/02/2008 - 07:42 | Warnen spam
On Wed, 06 Feb 2008 21:42:52 +0000, Nico Hoffmann wrote:

Will sagen: Kann ich denn einfach so ein 'Hello-Wold'-Modul schreiben,
ein 'hello-1.ko' draus kompilieren und in den Kernel laden, ohne einen
darauf abgestimmten Kernel kompiliert zu haben?
Das hieße ja doch, ich könnte dieses Modul auf jedem beliebigen (2.4er
oder 2.6er) Linux-System kompilieren und in den gerade laufenden
Kernel laden, solange nur ladbare Module unterstützt werden?



Wenn Du es kompilierst, werden die installierten Kernel-Header verwendet.
Das laufende Kernel muß zu diesen Headern passen, sonst kannst Du das
Modul nicht laden.

Jörn

Ähnliche fragen