sched_getscheduler(3) — Subroutines
NAME
sched_getscheduler − Return the scheduling policy of a process (P1003.1b)
SYNOPSIS
#include <sched.h>
int sched_getscheduler (
pid_t pid);
PARAMETERS
pid The ID of the process for which the scheduling policy is obtained. If pid is zero, the scheduling policy of the calling process is obtained.
DESCRIPTION
The sched_getscheduler function returns the current scheduling policy of a process. The values that can be returned are defined in the header file <sched.h>.
The sched_setscheduler function changes the scheduling policy and priority of a process. Changing the scheduling policy and priority ensures that an application can determine more effectively when a process will run.
The realtime scheduling policies are as follows:
•SCHED_FIFO − specifies the first-in, first-out (FIFO) scheduling policy
•SCHED_RR − specifies the round-robin scheduling policy
•SCHED_OTHER − specifies the standard timesharing scheduling policy
The SCHED_FIFO and SCHED_RR scheduling policies are fixed-priority scheduling policies. You can specify a priority for your process and the scheduler will not adjust it. Setting priorities, in conjunction with a SCHED_FIFO scheduling policy, allows a critical process to run as soon as it is ready, for as long as it needs to run, because the process will preempt other lower priority processes.
The round-robin scheduling policy is similar to first in-first out, but also imposes a quantum on execution time. Use the sched_rr_get_interval function to determine the current quantum for process execution under the SCHED_RR scheduling policy.
The scheduler adjusts process priorities running under the timesharing scheduling policy.
No special privileges are needed to use the sched_getscheduler function.
RETURN VALUES
On a successful call to sched_getscheduler the scheduling policy of the process is returned. If there is an error, −1 is returned and errno is set to indicate the error.
ERRORS
The sched_getscheduler function fails under the following condition:
[ESRCH] No process can be found corresponding to that specified by pid.
RELATED INFORMATION
Functions: getpid(2), sched_getparam(3), sched_setparam(3), sched_setscheduler(3)