Je veux savoir comment cron
fonctionne en interne. Le processus continue-t-il à vérifier l'heure actuelle dans une boucle while infinie (consommant ainsi continuellement des cycles CPU) ? Ou une fonction génère-t-elle une interruption et notifie-t-elle le cron
démon ?
Réponse acceptée :
Une fois, j'ai lu le code source de vixie-cron et j'ai dû être hospitalisé. Cependant, si vous recherchez "certaines fonctions génèrent une interruption" à un moment donné dans le futur, vous devez rechercher l'alarm(2)
appel système. Il demande au noyau de vous envoyer le signal SIGALRM
à une heure programmée, que vous pouvez ensuite attraper. En attendant, votre processus peut faire autre chose, ou sleep()
, comme je l'ai fait à l'hôpital.