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

FreeBSD Manual Pages

  
 
  

home | help
GETPRIORITY(2)		  FreeBSD 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() system call and
     set with the setpriority()	system call.  The which	argument 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.  The prio argument is	a
     value in the range	-20 to 20.  The	default	priority is 0; lower priori-
     ties cause	more favorable scheduling.

     The getpriority() system call returns the highest priority	(lowest	numer-
     ical value) enjoyed by any	of the specified processes.  The setpriority()
     system 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
     The getpriority() and setpriority() system	calls will fail	if:

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

     [EINVAL]		The which argument 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() system call appeared in 4.2BSD.

FreeBSD	13.0			 June 4, 1993			  FreeBSD 13.0

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+13.2-RELEASE+and+Ports>

home | help