sched_get_priority_max, sched_get_priority_min — get static priority range
#include <sched.h>
int
sched_get_priority_max( |
int | policy) ; |
int
sched_get_priority_min( |
int | policy) ; |
sched_get_priority_max
()
returns the maximum priority value that can be used with the
scheduling algorithm identified by policy
. sched_get_priority_min
() returns the
minimum priority value that can be used with the scheduling
algorithm identified by policy
. Supported policy
values are SCHED_FIFO
, SCHED_RR
, SCHED_OTHER
, and SCHED_BATCH
. Further details about these
policies can be found in sched_setscheduler(2).
Processes with numerically higher priority values are
scheduled before processes with numerically lower priority
values. Thus, the value returned by sched_get_priority_max
() will be greater
than the value returned by sched_get_priority_min
().
Linux allows the static priority value range 1 to 99 for
SCHED_FIFO
and SCHED_RR
and the priority 0 for
SCHED_OTHER
and SCHED_BATCH
. Scheduling priority ranges for
the various policies are not alterable.
The range of scheduling priorities may vary on other POSIX
systems, thus it is a good idea for portable applications to
use a virtual priority range and map it to the interval given
by sched_get_priority_max
() and
sched_get_priority_min
().
POSIX.1-2001 requires a spread of at least 32 between the
maximum and the minimum values for SCHED_FIFO
and SCHED_RR
.
POSIX systems on which sched_get_priority_max
() and sched_get_priority_min
() are available
define _POSIX_PRIORITY_SCHEDULING
in <
unistd.h
>
On success, sched_get_priority_max
() and sched_get_priority_min
() return the
maximum/minimum priority value for the named scheduling
policy. On error, −1 is returned, and errno
is set appropriately.
sched_getaffinity(2), sched_getparam(2), sched_getscheduler(2), sched_setaffinity(2), sched_setparam(2), sched_setscheduler(2)
Programming for the real world − POSIX.4 by Bill O. Gallmeister, O'Reilly & Associates, Inc., ISBN 1-56592-074-0