*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> getpriority (2)              



NAME    [Toc]    [Back]

       getpriority, setpriority - get/set program scheduling priority

SYNOPSIS    [Toc]    [Back]

       #include <sys/time.h>
       #include <sys/resource.h>

       int getpriority(int which, int who);
       int setpriority(int which, int who, int prio);

DESCRIPTION    [Toc]    [Back]

       The  scheduling	priority  of  the  process, process group, or user, as
       indicated by which and who is obtained with the	getpriority  call  and
       set   with  the	setpriority  call.   Which  is	one  of  PRIO_PROCESS,
       PRIO_PGRP, or PRIO_USER, and who is interpreted relative  to  which  (a
       process	identifier  for  PRIO_PROCESS,	process  group	identifier for
       PRIO_PGRP, and a user ID for PRIO_USER).  A zero value of  who  denotes
       the  current  process,  process group, or user.	Prio is a value in the
       range -20 to 20.  The default priority is  0;  lower  priorities  cause
       more favorable scheduling.

       The  getpriority  call  returns	the highest priority (lowest numerical
       value) enjoyed by any of the specified processes.  The setpriority call
       sets  the priorities of all of the specified processes to the specified
       value.  Only the super-user may lower priorities.

RETURN VALUE    [Toc]    [Back]

       Since getpriority can legitimately return the value -1, it is necessary
       to  clear  the external variable errno prior to the call, then check it
       afterwards to determine if a -1 is an error or a legitimate value.  The
       setpriority call returns 0 if there is no error, or -1 if there is.

ERRORS    [Toc]    [Back]

       ESRCH  No process was located using the which and who values specified.

       EINVAL Which was not one of PRIO_PROCESS, PRIO_PGRP, or PRIO_USER.

       In addition to the errors indicated above, setpriority will fail if:

       EPERM  A process was located, but neither its effective nor  real  user
	      ID matched the effective user ID of the caller.

       EACCES A non super-user attempted to lower a process priority.

NOTE    [Toc]    [Back]

       Including <sys/time.h> is not required these days, but increases portability.
	(Indeed, <sys/resource.h> defines the  rusage  structure  with
       fields of type struct timeval defined in <sys/time.h>.)

CONFORMING TO    [Toc]    [Back]

       SVr4, 4.4BSD (these function calls first appeared in 4.2BSD).

SEE ALSO    [Toc]    [Back]

       nice(1), fork(2), renice(8)

BSD Man Page			  2001-06-19			GETPRIORITY(2)
[ Back ]
 Similar pages
Name OS Title
nice NetBSD set program scheduling priority
nice FreeBSD set program scheduling priority
nice Linux run a program with modified scheduling priority
getpriority Tru64 Get or set process scheduling priority
setpriority Tru64 Get or set process scheduling priority
nice Tru64 Change the scheduling priority of a process
sched_get_priority_max IRIX get scheduling policy priority range
nice OpenBSD change process scheduling priority
npri IRIX modify the scheduling priority of a process
nice FreeBSD execute a utility at an altered scheduling priority
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service