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 process scheduling priority

SYNOPSIS
     #include <sys/resource.h>

     int
     getpriority(int which, id_t who);

     int
     setpriority(int which, id_t 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.  Priority values outside the range -20 to 20 are truncated to the
     appropriate limit.	 Only the superuser 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() call	returns	0 if there is no error,	or -1 if there is.

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, 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-superuser	attempted to lower a process priority.

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

STANDARDS
     The getpriority() and setpriority() functions conform to IEEE Std
     1003.1-2008 ("POSIX.1").

HISTORY
     The predecessor of	these functions, the former nice() system call,	ap-
     peared in Version 3 AT&T UNIX and was removed in 4.3BSD-Reno.  The
     getpriority() and setpriority() system calls appeared in 4.1cBSD.

FreeBSD	13.0		      September	10, 2015		  FreeBSD 13.0

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

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=getpriority&sektion=2&manpath=OpenBSD+6.9>

home | help