alarm" and "setitimer share the same timer; calls to one will interfere with use of the other.
sleep() may be implemented using SIGALRM; mixing calls to alarm() and sleep() is a bad idea.
Scheduling delays can, as ever, cause the execution of the process to be delayed by an arbitrary amount of time.
SVr4, SVID, POSIX, X/OPEN, BSD 4.3
setitimer(2), signal(2), sigaction(2), gettimeofday(2), select(2), pause(2), sleep(3)