psm.h - Header file for the PSM vital process monitoring
subsystem
#ifndef _PSM_H_
#define _PSM_H_
#include <ksm/ksm.h>
The Process Set Manager (PSM) is a loadable kernel subsystem
that monitors the state of vital processes. The PSM
is layered the Kernel Set Manager (KSM), and uses the Category
and MIB-id relationships it provides.
PSM uses the Event Manager (EVM) to generate events that
are available for subscription by other system entities
and users. For example, PSM generates an event when processes
are started or when they exit. This feature is
described in EVM Events.
PSM Process Categories and Members [Toc] [Back]
Processes monitored by PSM are organized as follows: Process
Category - You create a process category by using the
cfg_psm_catops() function. Refer to cfg_psm_catops(3) for
information. Process Category Member - Each process to be
monitored is registered as a member of a category. You
create a member by using the cfg_psm_memops() function.
Refer to cfg_psm_memops(3) for information.
For each process, PSM maintains the following data which
is described in detail in cfg_psm_memops(3). A clusterwide
unique name specifying the cluster node number Its
process identifier (PID) Its termination status, only
valid when the process exit flag is set Its flag settings
A user-modifiable state string which has two predefined
values: running and exited Its saved argument vector, only
complete if the argv-truncation flag is not set
Monitoring of processes by PSM is subject to the following
rules: After a process exits, termination status continues
to be available until either the process is restarted or
you manually remove it. When a process is restarted, any
exited process instance in the target category is replaced
by the new instance of the process. A specific process
instance is registered in only one category.
EVM Events [Toc] [Back]
When you use PSM, the following EVM events are generated
and become available for subscription at the local node.
Events are always posted in the order that they occur:
sys.unix.psm.set.create - This event is available for subscription
at the local host when you create a PSM set.
sys.unix.psm.set.remove - This event is available for subscription
at the local host when you remove a PSM set.
sys.unix.psm.category.create - This event is available for
subscription at the host containing the category name when
you create a category. (See RESTRICTIONS.)
sys.unix.psm.category.remove - This event is available for
subscription at the host containing the category name when
you remove a category. sys.unix.psm.instance.create -
This event is available for subscription cluster-wide when
you create a process instance. The event data contains the
category name and the PID. sys.unix.psm.instance.remove -
This event is available for subscription cluster-wide when
you remove a running instance. The event data contains the
category name and the PID. sys.unix.psm.instance.exited -
This event is available for subscription cluster-wide when
a process instance exits. The event data contains the
category name, its PID, and its termination status.
See EVM(5) for information on how to retrieve these
events. See sys_attrs_psm(5) for information on tuning and
configuring PSM subsystem attrributes.
The Kernel Set Manager (KSM) does not permit set removal.
Once the PSM module is loaded, it cannot be unloaded.
The KSM does not permit category removal.
If an attribute supports a range (-N to +N) any attempt to
exceed the maximum or minimum value returns an ENOSPC subsystem
error.
Any attempt to re-register a currently running process
causes an EALREADY subsystem error.
Any attempt to remove a category returns an ENOTSUP subsystem
error.
Location of the header file.
Commands: sysconfig(8), sysconfigdb(8)
Library: cfg_psm_catops(3), cfg_psm_memops(3), libcfg(3)
Misc: EVM(5), sys_attrs_psm(5)
psm.h(4)
[ Back ] |