nice(2)
NAME
nice - set program priority
SYNOPSIS
#include <unistd.h>
int nice(int incr)
DESCRIPTION
The scheduling priority of the process is augmented by incr. Positive
priorities get less service than normal. Priority 10 is recommended to
users who wish to execute long-running programs without flak from the
administration.
Negative increments are ignored except on behalf of the super-user. The
priority is limited to the range -20 (most urgent) to 20 (least).
The priority of a process is passed to a child process by fork(2). For a
privileged process to return to normal priority from an unknown state,
nice should be called successively with arguments -40 (goes to priority
-20 because of truncation), 20 (to get to 0).
If a CPU-bound process at nice level 0 gets one tick from the scheduler,
then a CPU-bound process at nice level n is entitled to 2 ** (-n / 2)
ticks, which boils down to 1/32 ticks at nice level 10, and 1/1024 ticks
at nice level 20. Compared to other systems the effect of the Minix nice
is quite strong.
SEE ALSO
nice(1).