priocntlset(2) priocntlset(2)
NAME
priocntlset, setprocset - control process scheduling
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 per-
formed 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
Page 1 Reliant UNIX 5.44 Printed 11/98
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 con-
venient 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),
RESULT
priocntlset() has the same results and errors as priocntl().
SEE ALSO
priocntl(1), priocntl(2).
Page 2 Reliant UNIX 5.44 Printed 11/98