Dynamically Tunable Parameters in HP-UX 11i

5
Figure 2: Determining whether a tunable parameter can be
changed without rebooting
Information about each tunable can be found in the online help system for SAM. This
data is also available on docs.hp.com. (Go to your current HP-UX release and then
search for “Configurable Kernel Parameters.”)
changing tunable
parameters with
kmtune and
mk_kernel
The kmtune(1M) command is HP-UX’s supported method for changing the values of
tunable parameters from the command line. kmtune will update the proper system file
to define a new value for a specified tunable. The next time the kernel is compiled, it will
incorporate the new value of the tunable. The administrator can compile the kernel using
mk_kernel(1M), and then reboot the system with the new kernel to complete the
change.
1
When kmtune is invoked with the –u flag, in addition to changing the system file,
kmtune will also change the value of the tunable being used by the currently running
kernel. In this case, no kernel rebuild or reboot is required.
using dynamic
tunable APIs
Software developers can write software which changes tunable parameters using the
settune(2) API. Such changes will remain effective only until the next time the kernel
is rebuilt, since settune() does not modify the system files like kmtune(1M) does.
The gettune(2) and tuneinfo(2) APIs can be used to retrieve information about
tunables and their current values.
persistence of
kernel tuning
Two mechanisms are used to ensure that tunable value changes remain persistent: the
system files and the Kernel Registry Service. These mechanisms keep tunable value
changes persistent across reboots, as long as the kernel is neither rebuilt nor renamed.
Depending on the method used, they may also remain persistent across kernel rebuilds.
In general, however, tunable value changes do not remain persistent when a kernel is
renamed, or when switching between two kernels with different names. The sections
below give more details.
1
kmtune(1M) is also capable of tuning the tunables defined by Dynamically Loadable Kernel Modules (DLKM). When changing a DLKM tunable,
the DLKM must be unloaded, recompiled, and reloaded to incorporate the new tunable value.