NAME
module
—
structure describing a kernel
module
DESCRIPTION
Each module in the kernel is described by a module_t structure. The structure contains the name of the device, a unique ID number, a pointer to an event handler function and to an argument, which is given to the event handler, as well as some kernel internal data.The
DECLARE_MODULE(9) macro registers the module with the system.
When the module is loaded, the event handler function is called with the
what argument set to MOD_LOAD
.
On unload, what is set to
MOD_UNLOAD
. When the system is shutting down,
what contains the value of
MOD_SHUTDOWN
.
EXAMPLES
#include <sys/param.h> #include <sys/kernel.h> #include <sys/module.h> static int foo_handler(module_t mod, int /*modeventtype_t*/ what, void *arg); static moduledata_t mod_data= { "foo", foo_handler, 0 }; MODULE_VERSION(foo, 1); MODULE_DEPEND(foo, bar, 1, 3, 4); DECLARE_MODULE(foo, mod_data, SI_SUB_EXEC, SI_ORDER_ANY);
SEE ALSO
DECLARE_MODULE(9), DEV_MODULE(9), DRIVER_MODULE(9), MODULE_DEPEND(9), MODULE_VERSION(9), SYSCALL_MODULE(9)
/usr/share/examples/kld
AUTHORS
This man page was written by Alexander Langer <alex@FreeBSD.org>.