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(procsett *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 {
idopt pop; /* operator connecting left/right sets */
idtypet plidtype; /* left set ID type */
idt plid; /* left set ID */
idtypet pridtype; /* right set ID type */
idt prid; /* right set ID */
} procsett;
plidtype and plid specify the ID type and ID of one (``left'') set
of processes; pridtype and prid 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. pop 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 pop
and the processes they specify are:
POPDIFF set difference: processes in left set and not in
right set
POPAND set intersection: processes in both left and right
sets
POPOR set union: processes in either left or right sets or
both
8/91 Page 1
priocntlset(2) priocntlset(2)
POPXOR 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)->pop = (op), \
(psp)->plidtype = (ltype), \
(psp)->plid = (lid), \
(psp)->pridtype = (rtype), \
(psp)->prid = (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 8/91