Man Linux: Main Page and Category List


       sched_setparam, sched_getparam - set and get scheduling parameters


       #include <sched.h>

       int sched_setparam(pid_t pid, const struct sched_param *param);

       int sched_getparam(pid_t pid, struct sched_param *param);

       struct sched_param {
           int sched_priority;


       sched_setparam()  sets  the  scheduling  parameters associated with the
       scheduling policy for the process identified by pid.  If pid  is  zero,
       then the parameters of the calling process are set.  The interpretation
       of the argument param depends on the scheduling policy of  the  process
       identified  by pid.  See sched_setscheduler(2) for a description of the
       scheduling policies supported under Linux.

       sched_getparam() retrieves the scheduling parameters  for  the  process
       identified  by pid.  If pid is zero, then the parameters of the calling
       process are retrieved.

       sched_setparam() checks the validity of param for the scheduling policy
       of  the  process.   The value param->sched_priority must lie within the
       range given by sched_get_priority_min(2) and sched_get_priority_max(2).

       For  a  discussion  of  the  privileges  and resource limits related to
       scheduling priority and policy, see sched_setscheduler(2).

       POSIX  systems  on  which  sched_setparam()  and  sched_getparam()  are
       available define _POSIX_PRIORITY_SCHEDULING in <unistd.h>.


       On  success, sched_setparam() and sched_getparam() return 0.  On error,
       -1 is returned, and errno is set appropriately.


       EINVAL The  argument  param  does  not  make  sense  for  the   current
              scheduling policy.

       EPERM  The calling process does not have appropriate privileges (Linux:
              does not have the CAP_SYS_NICE capability).

       ESRCH  The process whose ID is pid could not be found.




       getpriority(2),           nice(2),           sched_get_priority_max(2),
       sched_get_priority_min(2), sched_getaffinity(2), sched_getscheduler(2),
       sched_setaffinity(2),      sched_setscheduler(2),       setpriority(2),

       Programming  for  the  real  world  -  POSIX.4  by Bill O. Gallmeister,
       O’Reilly & Associates, Inc., ISBN 1-56592-074-0


       This page is part of release 3.24 of the Linux  man-pages  project.   A
       description  of  the project, and information about reporting bugs, can
       be found at