Configuring HP-UX For Peripherals
Chapter 1 21
Getting Started
Understanding Loadable Device Drivers
Understanding Loadable Device Drivers
As of HP-UX Release 11.0, a new feature known as Dynamically
Loadable Kernel Module (DLKM) provides the means to add a device
driver to a running UNIX system without rebooting the system or
rebuilding the kernel. This feature also makes it possible to dynamically
remove a device driver from the UNIX system when the driver is no
longer needed, thereby freeing system resources for other use.
The DLKM feature not only provides the infrastructure to load drivers
into a running kernel, but it also allows a driver to be statically linked
into the kernel—the way all drivers were included in the kernel prior to
HP-UX 11.0. Simply setting a flag in one of the driver’s configuration
files determines whether a driver is to be configured as dynamically
loadable or statically linked.
For HP-UX 11.0, the system must be in a run-time state before dynamic
module loading is available. Thus, drivers required during system boot
must be configured as statically linked.
DLKM Module Types
The DLKM feature currently supports the following types of drivers:
WSIO class drivers, WSIO interface drivers, and STREAMS drivers. It
also supports STREAMS modules and miscellaneous modules. An
example of a miscellaneous module is a module containing support
functions not required in the statically configured kernel but shared
among multiple loadable modules.
New Module Packaging
As of HP-UX 11.0, each driver may have its own master and system
files, whereas prior to HP-UX 11.0, the driver shared master files and
had access to a single system file—the HP-UX system file
(/stand/system by default). (The HP-UX system file is still supported in
HP-UX 11.0.) This new way of packaging drivers together with the new
way of writing driver source code is what makes the DLKM feature
possible.
NOTE See the master (4) manpage for descriptions of the two kinds of master