Attualmente sto esaminando il codice di un driver di "terze parti" nel tentativo di capire/imparare come funziona. Ho dato un'occhiata a siti come this one, quindi capisco come funziona la premessa di base, ma non capisco lo scopo di #ifdef MODULE
qui. Google non è davvero di grande aiuto, ma penso che la definizione si riferisca ad un modulo del kernel? (Sono anche completamente nuovo a questo.)Scopo di `#ifdef MODULE` attorno a module_exit()?
module_init(os_driver_init);
#ifdef MODULE
module_exit(os_driver_cleanup);
#endif
La mia domanda è: cosa succede se mi tolgo la dichiarazione #ifdef
? Inoltre, perché/quando sarebbe necessario includere la dichiarazione #ifdef
?
Esiste un'alternativa (più in basso nel codice) 'module_exit (...)' line? Può darsi che vengano chiamate funzioni alternative e il 'ifdef MODULE' controlli questo – chrisb2244
Forse' MODULE' deve essere definito quando il driver viene compilato staticamente nel kernel? http://www.fsl.cs.sunysb.edu/kernel-api/re02.html – user694733
Puoi collegarti a questo codice di driver di "terze parti"? Il '# ifdef' che stai mostrando non dovrebbe essere più lì. –