Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ nice(2) — SunOS 5.6

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

nice(1)

exec(2)

priocntl(2)

nice(2)

NAME

nice − change priority of a process

SYNOPSIS

#include <unistd.h>

int nice(int incr);

DESCRIPTION

The nice() function allows a process to change its priority.  The invoking process must be in a scheduling class that supports the nice().  The priocntl(2) function is a more general interface to scheduler functions. 

nice() adds the value of incr to the nice value of the calling process.  A process’ nice value is a non-negative number for which a greater positive value results in lower CPU priority. 

A maximum nice value of 2 ∗ NZERO −1 and a minimum nice value of 0 are imposed by the system.  NZERO is defined in <limits.h> with a default value of 20.  Requests for values above or below these limits result in the nice value being set to the corresponding limit.  A nice value of 40 is treated as 39.  Only a process with super-user privileges can lower the nice value. 

RETURN VALUES

Upon successful completion, nice() returns the new nice value minus NZERO. Otherwise, a value of −1 is returned, the process’ nice value is not changed, and errno is set to indicate the error. 

ERRORS

nice() fails if one or more of the following are true:

EINVAL nice() is called by a process in a scheduling class other than time-sharing. 

EPERM inc is negative or greater than 40 and the effective user ID of the calling process is not super-user. 

USAGE

As −1 is a permissible return value in a successful situation, an application wishing to check for error situations should set errno to 0, then call nice(), and if it returns −1, check to see if errno is non-zero. 

SEE ALSO

nice(1), exec(2), priocntl(2)

SunOS 5.6  —  Last change: 5 Feb 1996

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026