The following interface calls control process scheduling.
Control over scheduling of active classes is done with priocntl(2). Class attributes are inherited through fork(2) and exec(2), along with scheduling parameters and permissions required for priority control. This inheritance happens with both the RT and the TS classes.
priocntl(2) is the interface for specifying a real-time process, a set of processes, or a class to which the system call applies. priocntlset(2) also provides the more general interface for specifying an entire set of processes to which the system call applies.
The command arguments of priocntl(2) can be one of: PC_GETCID, PC_GETCLINFO, PC_GETPARMS, or PC_SETPARMS. The real or effective ID of the calling process must match the real or effective ID of the affected processes, or must have superuser privilege.
This command takes the name field of a structure that contains a recognizable class name. The class ID and an array of class attribute data are returned.
This command takes the ID field of a structure that contains a recognizable class identifier. The class name and an array of class attribute data are returned.
This command returns the scheduling class identifier or the class specific scheduling parameters of one of the specified processes. Even though idtype and id might specify a big set, PC_GETPARMS returns the parameter of only one process. The class selects the process.
This command sets the scheduling class or the class-specific scheduling parameters of the specified process or processes.
Returns the maximum values for the specified policy.
Returns the minimum values for the specified policy. For more information, see the sched_get_priority_max(3R) man page.
Updates the specified timespec structure to the current execution time limit. For more information, see the sched_get_priority_max(3RT) man page.
Sets or gets the scheduling parameters of the specified process.
Blocks the calling process until the calling process returns to the head of the process list.