Manual pages › System calls (2)
priocntlset(2)
generalized process scheduler control
From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.
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 correspond- ing arg structures. psp is a pointer to a procset struc- ture, 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
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