rtprio.1 revision 2447

Copyright (c) 1994, Henrik Vestergaard Draboel
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software
must display the following acknowledgement:
This product includes software developed by Henrik Vestergaard Draboel.
4. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

$Id$

.Dd July 23, 1994 .Dt RTPRIO 1 .Os .Sh NAME .Nm rtprio .Nd execute, examine or modify a utilitys or process realtime scheduling priority .Sh SYNOPSIS .Nm rtprio .Nm rtprio .Ar pid .Nm rtprio .Ar priority .Ar command .Op args .Nm rtprio .Ar priority .Ar -pid .Nm rtprio .Ar -t .Ar command .Op args .Nm rtprio .Ar -t .Ar -pid .Sh DESCRIPTION .Nm Rtprio is used for controlling realtime process scheduling. A process with a realtime priority is not subject to priority degradation, and will only be preempted by another process of equal or higher realtime priority. .Nm Rtprio called without arguments, will return the realtime priority of the current process. If .Nm rtprio is called with 1 argument, it will return the realtime priority of the process with the specified .Ar pid . If .Ar priority is specified, the process or program is run at that realtime priority. If .Ar -t is specified, the process or program is run as a normal (non-realtime) process. If .Ar -pid is specified, the process with that pid will be modified, else if .Ar command is specified, that program is run with its arguments. .Ar Priority is an integer between 0 (RTPRIO_MIN) and 31 (RTPRIO_MAX). 0 is the highest priority .Ar Pid of 0 means "the current process". Only root is allowed to set realtime priorities. .Sh RETURN VALUE .Nm rtprio returns the (new) realtime priority of the process (see rtprio(2)), or -1 for all usage errors. .Sh EXAMPLES .\LP To see which realtime priority the current process is at: d -literal -offset indent -compact rtprio .Ed .\.LP To see which realtime priority of process 1423: d -literal -offset indent -compact rtprio 1423 .Ed .\.LP To run cron at the lowest realtime priority: d -literal -offset indent -compact rtprio 31 cron .Ed .\.LP To change the realtime priority of process 1423 to 16: d -literal -offset indent -compact rtprio 16 -1423 .Ed .\.LP To run tcpdump without realtime priority: d -literal -offset indent -compact rtprio -t tcpdump .Ed .\.LP To change the realtime priority of process 1423 to RTRIO_RTOFF (no realtime): d -literal -offset indent -compact rtprio -t -1423 .Ed .Sh DIAGNOSTICS The .Nm rtprio utility shall exit with value of the (new) realtime priority of the program. .Sh SEE ALSO .Xr rtprio 2 , .Xr nice 1 , .Xr ps 1 , .Xr nice 2 , .Xr renice 8 .Sh HISTORY The .Nm rtprio utility appeared in FreeBSD 2.0, but is similar to the HP-UX version. .Sh BUGS You can lock you're self out of the system, be placing at cpu-heavy process in a realtime priority. There is no way to set/view the realtime priority of process 0 (swapper) (see ps(1)). Others ... .Sh AUTHOR Henrik Vestergaard Draboel - hvd@terry.ping.dk