Quiero saber cómo cron
funciona internamente. ¿El proceso sigue comprobando la hora actual en un bucle while infinito (consumiendo así continuamente ciclos de CPU)? ¿O alguna función genera una interrupción y notifica al cron
? demonio?
Respuesta aceptada:
Una vez leí el código fuente de vixie-cron y tuve que ser hospitalizado. Sin embargo, si está buscando "alguna función que genere una interrupción" en el futuro, debe investigar la alarm(2)
llamada al sistema. Le pide al kernel que le envíe la señal SIGALRM
a una hora programada, que luego puede capturar. Mientras tanto, su proceso puede hacer otra cosa, o sleep()
, como lo hice en el hospital.