sleep - suspend execution for interval

unsigned int sleep(seconds)
unsigned int seconds;

The current process is suspended from execution for the number of
seconds specified by the argument. The actual suspension time may
be up to 1 second less than that requested, because scheduled
wakeups occur at fixed 1-second intervals, and an arbitrary amount
longer because of other activity in the system.

The routine is implemented by setting an interval timer and pausing
until it occurs. The previous state of this timer is saved and
restored. If the sleep time exceeds the time to the expiration of
the previous timer, the process sleeps only until the signal would
have occurred, and the signal is sent 1 second later.

setitimer(2), sigpause(2), usleep(3)