Title: set_timer()


If there are any timers in timer_chain, set_timer() (not to be mistaken with set_time()) does one (and only one) of two things:

1) clck_call_expire is set so that clck_expire_timers() is called the next time around main()'s endless loop. This occurs if the timer at the head of timer_chain (i.e., the timer scheduled to expired first) has expired.

2) A message is sent to the clock task requesting a new synchronous alarm. This occurs if the synchronous alarm has not been set or if a new timer expires before the other timers.

If there are no timers in timer_chain, set_timer() simply returns without doing anything.