GNU/Linux |
Debian 6.0.9(Squeeze) |
|
![]() |
sched_rr_get_interval(2) |
![]() |
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 kernels). | ||
ESRCH |
The process whose ID is pid could not be found. |
POSIX.1-2001.
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.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.
![]() |
sched_rr_get_interval(2) | ![]() |