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

FreeBSD Manual Pages

  
 
  

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

NAME
     rtprio -- examine or modify a process realtime or idle priority

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <sys/types.h>
     #include <sys/rtprio.h>

     int
     rtprio(int	function, pid_t	pid, struct rtprio *rtp);

DESCRIPTION
     The rtprio() system call is used to lookup	or change the realtime or idle
     priority of a process.

     The function argument specifies the operation to be performed.
     RTP_LOOKUP	to lookup the current priority,	and RTP_SET to set the prior-
     ity.  The pid argument specifies the process to be	used, 0	for the	cur-
     rent process.

     The *rtp argument is a pointer to a struct	rtprio which is	used to	spec-
     ify the priority and priority type.  This structure has the following
     form:

     struct rtprio {
	     u_short type;
	     u_short prio;
     };

     The value of the type field may be	RTP_PRIO_REALTIME for realtime priori-
     ties, RTP_PRIO_NORMAL for normal priorities, and RTP_PRIO_IDLE for	idle
     priorities.  The priority specified by the	prio field ranges between 0
     and RTP_PRIO_MAX (usually 31).  0 is the highest possible priority.

     Realtime and idle priority	is inherited through fork() and	exec().

     A realtime	process	can only be preempted by a process of equal or higher
     priority, or by an	interrupt; idle	priority processes will	run only when
     no	other real/normal priority process is runnable.	 Higher	real/idle pri-
     ority processes preempt lower real/idle priority processes.  Processes of
     equal real/idle priority are run round-robin.

RETURN VALUES
     The rtprio() 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 rtprio() system call will fail	if:

     [EINVAL]		The specified prio was out of range.

     [EPERM]		The calling process is not allowed to set the realtime
			priority.  Only	root is	allowed	to change the realtime
			priority of any	process, and non-root may only change
			the idle priority of the current process.

     [ESRCH]		The specified process was not found.

SEE ALSO
     nice(1), ps(1), rtprio(1),	setpriority(2),	nice(3), renice(8)

AUTHORS
     The original author was Henrik Vestergaard	Draboel	<hvd@terry.ping.dk>.
     This implementation in FreeBSD was	substantially rewritten	by David
     Greenman.

BSD				 July 23, 1994				   BSD

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

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

home | help