from what I can figure the process is put into a "sleep" state (see htop, the processes marked S are sleeping) and then (depending if the usleep or sleep command) is used they are subsequently triggered by a "type of" signal. (this /may/ be the "alarm" signal)
I am also relatively certain this is achieved by the use of
http://man7.org/linux/man-pages/man2...meofday.2.html mixed with
http://man7.org/linux/man-pages/man2/alarm.2.html , but as I intimated above usleep is guaranteed to fire - whereas "sleep" is a bit more sketchy
strace usage often reveals MANY gettimeofday calls inside apps, and I have always thought that this was /probably/ related to sleeping processes.
In terms of resource I would list it as "negligible"
Hopefully someone can back-up or pooh-pooh what I have said here as it is mainly conjecture.