168
contributi
Nessun oggetto della modifica |
|||
Riga 32: | Riga 32: | ||
</pre> | </pre> | ||
I moduli del kernel devono avere almeno due funzioni. Una funzione "iniziale" (inizializzazione) detta <code>init_module()</code> che è chiamata quando il modulo è inserito nel kernel tramite insmod, e una funzione "finale" (di pulizia) detta <code>cleanup_module()</code> che è chiamata prima che il modulo venga rimosso con rmmoded. In realtà, le cose sono cambiate a partire dal kernel 2.3.13. | I moduli del kernel devono avere almeno due funzioni. Una funzione "iniziale" (inizializzazione) detta <code>init_module()</code> che è chiamata quando il modulo è inserito nel kernel tramite insmod, e una funzione "finale" (di pulizia) detta <code>cleanup_module()</code> che è chiamata prima che il modulo venga rimosso con rmmoded. In realtà, le cose sono cambiate a partire dal kernel 2.3.13. Si può utilizzare qualunque nome che piaccia per la funzione di inizializzazione e di cleanup, e si imparerà a farlo nella Sezione XXXX2.3XXXX. Infatti, il nuovo metodo è quello preferito. Comunque, molti continuano ad utilizzare init_module() e cleanup_module() per le proprie funzioni iniziali e finali. | ||
Tipicamente, <code>init_module()</code> o registra un handler con il kernel per fare una serie di azioni, oppure rimpiazza una della funzioni del kernel stesso con un codice proprio (usualmente questo codice fa una serie di azioni e poi chiama la funzione originale). Si suppone che la funzione <code>cleanup_module()</code> disfaccia tutto ciò che ha fatto <code>init_module()</code>, in modo tale che il modulo possa essere rimosso tranquillamente. | Tipicamente, <code>init_module()</code> o registra un handler con il kernel per fare una serie di azioni, oppure rimpiazza una della funzioni del kernel stesso con un codice proprio (usualmente questo codice fa una serie di azioni e poi chiama la funzione originale). Si suppone che la funzione <code>cleanup_module()</code> disfaccia tutto ciò che ha fatto <code>init_module()</code>, in modo tale che il modulo possa essere rimosso tranquillamente. |
contributi