priocntlset(2) priocntlset(2)
NAME
priocntlset - generalized process scheduler control
SYNOPSIS
#include <sys/types.h>
#include <sys/procset.h>
#include <sys/priocntl.h>
#include <sys/rtpriocntl.h>
#include <sys/tspriocntl.h>
long priocntlset(procset_t *psp, int cmd, ... /* arg */);
DESCRIPTION
priocntlset changes the scheduling properties of running processes.
priocntlset has the same functions as the priocntl system call, but a
more general way of specifying the set of processes whose scheduling
properties are to be changed.
cmd specifies the function to be performed. arg is a pointer to a
structure whose type depends on cmd. See priocntl(2) for the valid
values of cmd and the corresponding arg structures.
psp is a pointer to a procset structure, which priocntlset uses to
specify the set of processes whose scheduling properties are to be
changed.
typedef struct procset {
idop_t p_op; /* operator connecting left/right sets */
idtype_t p_lidtype; /* left set ID type */
id_t p_lid; /* left set ID */
idtype_t p_ridtype; /* right set ID type */
id_t p_rid; /* right set ID */
} procset_t;
p_lidtype and p_lid specify the ID type and ID of one (``left'') set
of processes; p_ridtype and p_rid specify the ID type and ID of a
second (``right'') set of processes. ID types and IDs are specified
just as for the priocntl system call. p_op specifies the operation
to be performed on the two sets of processes to get the set of
processes the system call is to apply to. The valid values for p_op
and the processes they specify are:
POP_DIFF set difference: processes in left set and not in
right set
POP_AND set intersection: processes in both left and right
sets
POP_OR set union: processes in either left or right sets or
both
7/91 Page 1
priocntlset(2) priocntlset(2)
POP_XOR set exclusive-or: processes in left or right set but
not in both
The following macro, which is defined in procset.h, offers a
convenient way to initialize a procset structure:
#define setprocset(psp, op, ltype, lid, rtype, rid) \
(psp)->p_op = (op), \
(psp)->p_lidtype = (ltype), \
(psp)->p_lid = (lid), \
(psp)->p_ridtype = (rtype), \
(psp)->p_rid = (rid),
DIAGNOSTICS
priocntlset has the same return values and errors as priocntl.
SEE ALSO
priocntl(2).
priocntl(1) in the User's Reference Manual
Page 2 7/91