Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GETPRIORITY(2)		    BSD	System Calls Manual		GETPRIORITY(2)

NAME
     getpriority, setpriority -- get/set program scheduling priority

LIBRARY
     Standard C	Library	(libc, -lc)

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

     int
     getpriority(int which, int	who);

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

DESCRIPTION
     The scheduling priority of	the process, process group, or user, as	indi-
     cated 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 VALUES
     Since getpriority() can legitimately return the value -1, it is necessary
     to	clear the external variable errno prior	to the call, then check	it af-
     terward to	determine if a -1 is an	error or a legitimate value.

     The setpriority() function	returns	the value 0 if successful; otherwise
     the value -1 is returned and the global variable errno is set to indicate
     the error.

ERRORS
     Getpriority() and setpriority() will fail if:

     [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 prior-
			ity.

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

HISTORY
     The getpriority() function	call appeared in 4.2BSD.

BSD				 June 4, 1993				   BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=setpriority&sektion=2&manpath=FreeBSD+4.7-RELEASE>

home | help