HP-UX Reference (11i v2 04/09) - 2 System Calls (vol 5)

_
__pset_rtctl(2) __pset_rtctl(2)
RTE_PSET_GETNEXTPSET
Return the ID of the next RTE processor set in the system after pset . The arg
argument is ignored.
Typically,
RTE_PSET_GETFIRSTPSET
is called to determine the first RTE
processor set.
RTE_PSET_GETNEXTPSET
is then called in a loop (until the
call returns -1) to determine the IDs of the remaining RTE processor sets in
the system.
See pset_ctl (2) for additional processor set query operations. The
pset_ctl() function allows users
query all processor sets in the system, processors in a specific processor set, processor set given a proces-
sor, etc.
A processor may be added to an RTE processor set using the
pset_assign()
function. In this case, the
processor is made unavailable to the kernel daemons; external I/O interrupts and pending callouts on this
processor are reassigned to processors in non-RTE processor sets in the system. Conversely, if a proces-
sor is removed from an RTE processor set and added to a non-RTE processor set, it is made available to
the kernel daemons and for external I/O interrupts. Similarly, if a non-empty RTE processor set is des-
troyed, its processors are made available to the kernel daemons and for external I/O interrupts.
Only a superuser may configure and unconfigure an RTE processor set. However, any user may query
the IDs and configuration of RTE processor sets. The PRIV_PSET privilege user has no special privileges
for RTE processor sets. Only a superuser may reassign processors into or out of an RTE processor set, or
change attribute values, or destroy an RTE processor set. Any user with EXEC permissions in an RTE
processor set may run applications in that RTE processor set.
HP-UX processor sets define processor set attributes to provide users explicit control in managing their
processor set configuration and work load assignment among many users and applications (see
pset_getattr (2) for details). A processor set is assigned default values for these attributes at creation
time. The RTE processor sets attributes are assigned different default values at time of configuration.
The supported attributes and their default values are:
PSET_ATTR_OWNID UID of the processor set owner. The superuser is the owner of an RTE proces-
sor set. This attribute cannot be changed for an RTE processor set.
PSET_ATTR_GRPID GID of processor set’s owner group. The superuser’s group-id is assigned by
default.
PSET_ATTR_PERM Access permissions for the processor set. For RTE processor sets, the proces-
sor set owner has all permissions, group has READ and EXEC permissions,
whereas others have only READ permissions. The group and others cannot be
given WRITE permissions.
PSET_ATTR_EMPTY Indicates the behavior on a request to bind a process or a thread to a processor
set that does not contain any processors. For RTE processor sets, such a
request will always be rejected.
PSET_ATTR_IOINTR A flag to indicate if processors in the processor set are configured to receive
external I/O interrupts or not. All processors in an RTE processor set are dis-
abled to receive interrupts. This attribute cannot be enabled until the proces-
sor set is unconfigured as RTE processor set.
PSET_ATTR_LASTSPU Indicates the behavior on a request to remove the last processor from a proces-
sor set if there are active processes and threads bound to the processor set.
For RTE processor sets, such a request will be rejected by default. However,
the superuser can change the value of this attribute to allow removal of the
last processor from an RTE processor set even if the processor set is busy.
Refer to pset_setattr() for supported values.
PSET_ATTR_NONEMPTY Indicates the behavior on a request to destroy a non-empty processor set. A
non-empty processor set has at least one processor assigned to it. For RTE
processor sets, such a request will be rejected by default. However, superuser
can change the value of this attribute to allow deletion of an RTE processor set
in use. Refer to pset_setattr() for supported values.
Processor Set Support
Use
sysconf() with _SC_PSET_SUPPORT to see if the processor set functionality is supported by the
underlying HP-UX operating system version.
HP-UX 11i Version 2: September 2004 2 Hewlett-Packard Company Section 23