Man Linux: Main Page and Category List


       sched_rr_get_interval - get the SCHED_RR interval for the named process


       #include <sched.h>

       int sched_rr_get_interval(pid_t pid, struct timespec * tp);


       sched_rr_get_interval() writes into the timespec structure  pointed  to
       by tp the round-robin time quantum for the process identified by pid.

       The timespec structure has the following form:

           struct timespec {
               time_t tv_sec;    /* seconds */
               long   tv_nsec;   /* nanoseconds */

       If  pid  is  zero,  the time quantum for the calling process is written
       into *tp.  The identified process should be running under the  SCHED_RR
       scheduling  policy.   POSIX systems on which sched_rr_get_interval() is
       available define _POSIX_PRIORITY_SCHEDULING in <unistd.h>.


       On  success,  sched_rr_get_interval()  returns  0.   On  error,  -1  is
       returned, and errno is set appropriately.


       EFAULT Problem with copying information to userspace.

       EINVAL Invalid pid.

       ENOSYS The  system  call  is  not  yet  implemented (only on rather old

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




   Linux Notes
       POSIX does not specify any mechanism for controlling the  size  of  the
       round-robin  time  quantum.   However,  Linux  provides a (nonportable)
       method of doing this.  The quantum can be controlled by  adjusting  the
       process’s nice value (see setpriority(2)).  Assigning a negative (i.e.,
       high) nice value results in a  longer  quantum;  assigning  a  positive
       (i.e.,  low)  nice  value  results  in  a shorter quantum.  The default
       quantum is 0.1 seconds; the degree to which  changing  the  nice  value
       affects the quantum has varied somewhat across kernel versions.


       sched_setscheduler(2) has a description of the Linux scheduling scheme.

       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