man.bsd.lv manual page server

Manual Page Search Parameters

MODULE(9) Kernel Developer's Manual MODULE(9)

modulestructure describing a kernel module

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.

#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);

DECLARE_MODULE(9), DEV_MODULE(9), DRIVER_MODULE(9), MODULE_DEPEND(9), MODULE_VERSION(9), SYSCALL_MODULE(9)

/usr/share/examples/kld

This man page was written by Alexander Langer <alex@FreeBSD.org>.

March 1, 2001 DragonFly-5.6.1