diff options
Diffstat (limited to 'man2/sched_setparam.2')
-rw-r--r-- | man2/sched_setparam.2 | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/man2/sched_setparam.2 b/man2/sched_setparam.2 new file mode 100644 index 000000000..2551707f5 --- /dev/null +++ b/man2/sched_setparam.2 @@ -0,0 +1,132 @@ +.\" Hey Emacs! This file is -*- nroff -*- source. +.\" +.\" Copyright (C) Tom Bjorkholm & Markus Kuhn, 1996 +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 2 of +.\" the License, or (at your option) any later version. +.\" +.\" The GNU General Public License's references to "object code" +.\" and "executables" are to be interpreted as the output of any +.\" document formatting or typesetting system, including +.\" intermediate and printed output. +.\" +.\" This manual is distributed in the hope that it will be useful, +.\" but WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public +.\" License along with this manual; if not, write to the Free +.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, +.\" USA. +.\" +.\" 1996-04-01 Tom Bjorkholm <tomb@mydata.se> +.\" First version written +.\" 1996-04-10 Markus Kuhn <mskuhn@cip.informatik.uni-erlangen.de> +.\" revision +.\" Modified 2004-05-27 by Michael Kerrisk <mtk16@ext.canterbury.ac.nz> +.\" +.TH SCHED_SETPARAM 2 2004-05-27 "Linux 2.6.6" "Linux Programmer's Manual" +.SH NAME +sched_setparam, sched_getparam \- set and get scheduling parameters +.SH SYNOPSIS +.B #include <sched.h> +.sp +\fBint sched_setparam(pid_t \fIpid\fB, const struct sched_param *\fIp\fB); +.sp +\fBint sched_getparam(pid_t \fIpid\fB, struct sched_param *\fIp\fB); +.sp +.nf +.ta 4n +\fBstruct sched_param { + ... + int \fIsched_priority\fB; + ... +}; +.ta +.fi +.SH DESCRIPTION +.B sched_setparam +sets the scheduling parameters associated with the scheduling policy +for the process identified by \fIpid\fR. If \fIpid\fR is zero, then +the parameters of the current process are set. The interpretation of +the parameter \fIp\fR depends on the selected policy. Currently, the +following three scheduling policies are supported under Linux: +.IR SCHED_FIFO , +.IR SCHED_RR , +and +.IR SCHED_OTHER. + +.B sched_getparam +retrieves the scheduling parameters for the +process identified by \fIpid\fR. If \fIpid\fR is zero, then the parameters +of the current process are retrieved. + +.B sched_setparam +checks the validity of \fIp\fR for the scheduling policy of the +process. The parameter \fIp->sched_priority\fR must lie within the +range given by \fBsched_get_priority_min\fR and +\fBsched_get_priority_max\fR. + +POSIX systems on which +.B sched_setparam +and +.B sched_getparam +are available define +.I _POSIX_PRIORITY_SCHEDULING +in <unistd.h>. + +.SH "RETURN VALUE" +On success, +.BR sched_setparam +and +.BR sched_getparam +return 0. +On error, \-1 is returned, +.I errno +is set appropriately. +.SH ERRORS +.TP +.B EINVAL +The parameter \fIp\fR does not make sense for the current +scheduling policy. +.TP +.B EPERM +The calling process does not have appropriate privileges. +A process calling +.BR sched_setparam +needs an effective user ID equal to the user ID or effective user ID +of the process identified by +.IR pid , +or (Linux) it must have the +CAP_SYS_NICE +capability. +.TP +.B ESRCH +The process whose ID is \fIpid\fR could not be found. +.SH "CONFORMING TO" +POSIX.1b (formerly POSIX.4) +.SH "SEE ALSO" +.BR getpriority (2), +.BR nice (2), +.BR sched_get_priority_max (2), +.BR sched_get_priority_min (2), +.BR sched_getaffinity (2), +.BR sched_getscheduler (2), +.BR sched_setaffinity (2), +.BR sched_setscheduler (2), +.BR setpriority (2), +.BR capabilities (7) +.PP +.BR sched_setscheduler (2) +has a description of the Linux scheduling scheme. +.PP +.I Programming for the real world \- POSIX.4 +by Bill O. Gallmeister, O'Reilly & Associates, Inc., ISBN 1-56592-074-0 +.br +.I IEEE Std 1003.1b-1993 +(POSIX.1b standard) +.br +.I ISO/IEC 9945-1:1996 |