Manpage of 'DECLARE_MODULE' on UHLU - BSD System Documentation,
Programming Reference, Manual Pages and Source Code
All manual pages         All RFC pages
Common page
for DECLARE_MODULE
Other pages
for DECLARE_MODULE
More pages
containing DECLARE_MODULE

Section 9 manual page or howto for 'DECLARE_MODULE'  

DECLARE_MODULE(9)      FreeBSD Kernel Developer's Manual     DECLARE_MODULE(9)

NAME
     DECLARE_MODULE -- kernel module declaration macro

SYNOPSIS
     #include <sys/param.h>
     #include <sys/kernel.h>
     #include <sys/module.h>

     DECLARE_MODULE(name, moduledata_t data, sub, order);

DESCRIPTION
     The DECLARE_MODULE() macro declares a generic kernel module.  It is used
     to register the module with the system, using the SYSINIT() macro.
     DECLARE_MODULE() is usually used within other macros, such as
     DRIVER_MODULE(9), DEV_MODULE(9) and SYSCALL_MODULE(9).  Of course, it can
     also be called directly, for example in order to implement dynamic
     sysctls.

     The arguments it expects are:

     name    The module name, which will be used in the SYSINIT() call to
	     identify the module.

     data    A moduledata_t structure, which contains two main items, the
	     official name of the module name, which will be used in the
	     module_t structure and a pointer to the event handler function of
	     type modeventhand_t.

     sub     An argument directed to the SYSINIT() macro.  Valid values for
	     this are contained in the sysinit_sub_id enumeration (see
	     <sys/kernel.h>) and specify the type of system startup inter-
	     faces.  The DRIVER_MODULE(9) macro uses a value of SI_SUB_DRIVERS
	     here for example, since these modules contain a driver for a
	     device.  For kernel modules that are loaded at runtime, a value
	     of SI_SUB_EXEC is common.

     order   An argument for SYSINIT().  It represents the KLDs order of ini-
	     tialization within the subsystem.	Valid values are defined in
	     the sysinit_elem_order enumeration (<sys/kernel.h>).

SEE ALSO
     DEV_MODULE(9), DRIVER_MODULE(9), module(9), SYSCALL_MODULE(9)

     /usr/include/sys/kernel.h, /usr/share/examples/kld

AUTHORS
     This manual page was written by Alexander Langer <alex@FreeBSD.org>,
     inspired by the KLD Facility Programming Tutorial by Andrew Reiter
     <arr@watson.org>.

FreeBSD 7.2			January 6, 2005 		   FreeBSD 7.2

NAME - SYNOPSIS - DESCRIPTION - SEE ALSO - AUTHORS -  
All manual pages         All RFC pages
Common page
for DECLARE_MODULE
Other pages
for DECLARE_MODULE
More pages
containing DECLARE_MODULE
A random manual page         All manual pages        All RFC pages