Brevet FR3089315A1 — publié le 20200605

Description Titre de l'invention : Procédé de détection d'une disparition de tache Domaine technique [0001] La présente invention concerne de manière générale le domaine du contrôle moteur. Elle vise en particulier un procédé de détection d'une disparition de tâche. Technique antérieure [0002] 11 est connu pour un logiciel, tel un contrôle commande de moteur à combustion interne, de découper le logiciel complet en tâches. Une tâche est un morceau de logiciel qui s'exécute séquentiellement sur une unique unité de traitement. Ainsi dans un système multi unité de traitement, tel un processeur multi-coeur, une tâche est une unité élémentaire de répartition du logiciel sur les multiples unités. Dans un tel logiciel une tâche est souvent récurrente en ce qu'une occurrence de la tâche s'exécute chaque fois qu'un événement se produit. Une tâche est alors périodique, si l'événement récurrent est périodique, et apériodique si l'événement récurrent est apériodique. Dans le cas d'un contrôle moteur il existe les deux types dc tâches : des tâches périodiques séquencées par une horloge selon une période fixe et des tâches apériodiques séquencées par un événement récurrent mais non périodique. Un exemple de tâche apériodique est une tâche synchrone à la rotation du moteur, telle qu'une tâche liée au régime moteur, comme par exemple une tâche séquencée par des fronts d'un capteur arbre à cames. [0003] Un découpage d'un morceau de logiciel, initialement séquentiel, pour le répartir sur plusieurs unités de traitement, produit plusieurs tâches. Ces tâches, bien qu'exécutées sur des unités dc traitement distinctes, doivent être exécutées dans le même ordre qu'initialement dans le morceau de logiciel découpé. Pour cela les tâches successives sont typiquement chaînées : une tâche amont dans la séquence ou tâche mère déclenche l'exécution d'une tâche avale ou tâche fille. [0004] Un système d'exploitation gère l'exécution des tâches en permettant aux tâches dc plus haute priorité dc s'exécuter rapidement tout en garantissant l'exécution des tâches de plus basse priorité. [0005] Certaines tâches apériodiques étant synchrone avec le moteur voient leur pseudo période se réduire avec l'augmentation du régime moteur. Ceci entraîne une augmentation de la charge de calcul du/des processeur(s) qui doivent exécuter plus souvent de telles tâches. En cas de très forte charge, le système d'exploitation doit prendre des mesures pour réguler cette charge. Pour cela le système d'exploitation réalise des arbitrages et peut être amené à supprimer une tâche. D'autres causes peuvent encore être à l'origine d'une disparition de tâche. 2 [0006] Si l'implémentation des tâches chaînées issues d'un morceau de logiciel n'est pas robuste au regard d'une disparition d'une tâche, les informations consommées ou produites par la tâche disparue deviennent manquantes, inconsistantes ou corrompues. Ceci peut produire un dysfonctionnement, pouvant entraîner une préjudiciable instabilité du contrôle moteur. [0007] Selon son implémentation, le système d'exploitation peut rendre compte de son action de suppression. Cependant les fonctions de surveillance et ou diagnostic qui rendent compte sont exécutées avec une priorité très basse. Aussi en cas de forte charge, l'information de suppression/disparition d'une tâche n'est connue que beaucoup trop tard pour prendre des contre-mesures efficaces pour corriger les conséquences de la disparition. [0008] De plus si la disparation d'une tâche n'est pas duc à un arbitrage, le système d'exploitation peut ne pas en être informé. [0009] Une des conséquences du problème va maintenant être illustrée en se basant sur un exemple simplifié comprenant une tâche mère TM récurrente s'exécutant sur une unité de traitement Cl, déclenchant à chacune de ses occurrences une tâche fille TF, s'exécutant sur une autre unité de traitement C2. [0010] Un événement récurent est repéré E de manière générique. Ses occurrences sont précisées par un index. Afin de bien décrire, une occurrence d'un événement peut être repérée par un index absolu ou par un index relatif. L'index absolu utilise les lettres minuscules dans l'ordre alphabétique. L'index relatif utilise une notation i-j, où i représente la dernière occurrence, ici l'occurrence absolue c, et j le rang de précédence relativement à l'occurrence i. Ainsi trois éléments successifs sont repérés de manière absolue : Ea, Eb, Ec. Si Ec est la dernière occurrence à s'être produite, elle est aussi Fultième occurrence et est noté Ei. De même la pénultième est notée Ei-1, l'antépénultième est notée Ei-2, etc. Par exemple, une tâche mère est repérée TM, sa deuxième occurrence est repérée TMb et sa pénultième occurrence est notée TMi-1. Une lettre T désigne une tâche. Une lettre D désigne une durée. Une lettre t désigne un instant ou une date. Une lettre M précise mère et F précise fille. Une lettre X désigne une donnée. [0011] Sur les figures 1-5, le temps s'écoule de gauche à droite. La première ligne concerne une première unité de traitement ou coeur Cl, la ligne intermédiaire figure une mémoire partagée M et la troisième ligne concerne une deuxième unité de traitement ou coeur C2. Les rectangles représentent des occurrences de tâche. Les rectangles arrondis représentent des données échangées. Les flèches pointillées figurent les déclenchements ou chaînages de tâches. Les flèches continues figurent les opérations de lecture ou d'écriture des données. [0012] Le chronogramme de la figure 1 montre une situation nominale illustrée au moyen 3 d'une tâche mère TM et une tâche fille TF, dont sont représentées trois occurrences successives TMa, TMb, TMc. TMc étant l'unième occurrence est aussi repérée TMi. TMb est la pénultième occurrence et est aussi repérée TMi-1. TMa est l'antépénultième occurrence et est aussi repérée TMi-2. [0013] L'ultième occurrence TMi ou TMc de la tâche mère TM produit une unième donnée Xi ou Xc, l'enregistre en mémoire M, et déclenche l'exécution de l'ultième occurrence TFi ou TFc de la tâche fille TF. Cette dernière TFi ou TFc relit l'ultième donnée Xi ou Xc pour la traiter. De manière analogue, précédemment, la pénultième occurrence TMi-1 ou TMb a produit et enregistrée en mémoire M la pénultième donnée Xi-1 ou XII, pour que la pénultième occurrence TFi-1 ou TFb puisse la relire et la traiter. Encore précédemment, l'antépénultième occurrence TMi-2 ou TFa a produit et enregistrée en mémoire M l'antépénultième donnée Xi-2 ou Xa, pour que l'antépénultième occurrence TFi-2 ou TFa puisse la relire et la traiter. [0014] Le chronogramme de la figure 2 montre une situation problématique. Ici, une tâche fille TF, soit la deuxième occurrence TFh disparaît. Il s'ensuit que la donnée correspondante Xb n'est pas lue ni traitée par l'occurrence TFh absente. Ensuite, selon la présence ou non d'un mécanisme de protection des données, la donnée Xb n'est soit jamais Inc et donc jamais traitée ou, comme illustré, est lue et traitée mais par la prochaine occurrence, soit l'occurrence suivante TFc de la tâche fille TF. Les deux cas sont problématiques et constituent des cas de corruption ou d'incohérence des données. [0015] Il peut être noté qu'ici, contrairement au cas de la figure 1, si TFc est l'ultième oc- currence de la tâche fille et est notée TFi, son occurrence immédiatement précédente est, en l'absence d'occurrence TFb, l'occurrence TFa qui est alors ici la pénultième occurrence TFi-1. [0016] Il est important de noter que les index relatifs s'appliquent toujours et uniquement aux occurrences réellement existantes, soit pour les tâches, aux occurrences réellement exécutées. Ici lorsque l'occurrence absolue TFb disparaît, l'index relatif (pénultième, il) se reporte sur l'occurrence précédente effectivement exécutée, soit sur l'occurrence TFa. Résumé de l'invention [0017] L'objectif de l'invention est de proposer un procédé de détection d'une disparition de tâche apte à fonctionner indépendamment du système d'exploitation et à fournir une indication de détection de manière la plus sûre possible. [0018] Cet objectif est atteint grâce à un procédé de détection d'une disparition de tâche dans un environnement comprenant au moins une tâche mère récurrente déclenchant en mode nominal à chaque occurrence au moins une tâche fille et comprenant les étapes suivantes : initialisation d'un moyen de comptage, incrémentation du moyen de comptage par chaque occurrence de la tâche mère, décrémentation du moyen de comptage par chaque occurrence de la tâche fille, vérification que le moyen de comptage présente une valeur nominale et dans la négative activation d'une alarme « perte de tâche », et réinitialisation éventuelle du moyen de comptage. [0019] Selon une autre caractéristique, la valeur nominale du moyen de comptage est égale à sa valeur d'initialisation après décrémentation et avant une nouvelle incrémentation, et est égale à sa valeur d'initialisation augmentée d'un incrément entre une incrémentation et une nouvelle décrémentation. [0020] Selon une autre caractéristique, le moyen de comptage est un compteur. [0021] Selon une autre caractéristique, l'étape de vérification et/ou l'étape de réinitialisation n'est réalisée que pour une occurrence d'une tâche mère ou fille sûre, en ce qu'elle est suffisamment distante de l'occurrence précédente de la même tâche. [0022] Selon une autre caractéristique, une occurrence d'une tâche est suffisamment distante de l'occurrence précédente lorsque cette distance est toujours supérieure à un délai d'activation d'une tâche, préférentiellement multiplié par un facteur de sécurité, préférentiellement compris entre 2 et 3. [0023] Selon une autre caractéristique, la vérification et/ou la réinitialisation est réalisée par une occurrence de la tâche mère et/ou par une occurrence de la tâche fille. [0024] Selon une autre caractéristique, la tâche mère est apériodique. [0025] Selon une autre caractéristique, la tâche mère et la tâche fille sont exécutées dans un environnement multi unité de traitement, préférentiellement sur des unités de traitement différentes. [0026] Selon une autre caractéristique, le procédé est implémenté dans un contrôle moteur, et la tâche mère est synchrone à un événement lié au régime moteur. [0027] Selon une autre caractéristique, la tâche mère est une tâche « détection d'un fi-ont sur une cible d'arbre à cames » et la tâche fille est une tâche « traitement suite à un front détecté sur la cible d'arbre à cames » et une occurrence d'une tâche est sûre pour un front final d'une dent/creux suffisamment longue. Brève description des dessins [0028] D'autres caractéristiques et avantages de l'invention apparaîtront encore à la lecture de la description qui va suivre. Celle-ci est purement illustrative et doit être lue en regard des dessins annexés sur lesquels: [0029] [fig.1] montre un chronogramme illustrant une situation nominale, [0030] [fig.2] montre un chronogramme illustrant une situation problématique, avec une dis- parition d'une occurrence de la tâche fille, [0031] [fig.3] montre un chronogramme illustrant une solution au problème, en situation nominale, 100321 Ifig.41 montre un chronogramme illustrant une solution au problème, en situation limite, sans disparition d'une occurrence de la tâche fille, [0033] [fig.5] montre un chronogramme illustrant une solution au problème, en situation problématique, avec une disparition d'une occurrence de la tâche fille, [0034] [fig.6] illustre la détermination de tâches/dents sûres pour un capteur arbre à cames. [0035] Pour plus de clarté, les éléments identiques ou similaires sont repérés par des signes de référence identiques sur l'ensemble des figures. Description des modes de réalisation [0036] L'invention concerne un procédé de détection d'une disparition de tâche dans un en- vironnement comprenant au moins une tâche mère TM récurrente. Chaque occurrence TM i, TMi-1, TM i-2 de cette tâche déclenche au moins une tâche fille TF. Il est précisé que cc déclenchement se produit en mode nominal. En effet la suppression d'une tâche peut encore être causée par le non déclenchement, par la tâche mère TM, de la tâche fille TF. Cc cas est aussi détecté par le procédé de l'invention. [0037] La perte d'une tâche peut s'avérer critique dans le cadre d'un contrôle moteur. Ainsi par exemple dans le cas d'une tâche traitant un capteur arbre à cames détectant des dents sur une roue dentée arbre à cames, et maintenant une position angulaire de l'arbre à cames, la disparition d'une tâche détectant un front de dent conduit à décaler la position angulaire de l'arbre à cames telle que connue du contrôle moteur. Il s'ensuit que les opérations réalisées en fonction de ladite position angulaire, par exemple l'injection de carburant, ne seront plus réalisées au bon instant. L'objectif du procédé est d'éviter de telles situations et leurs conséquences. [0038] Lc procédé de détection, tel qu'illustré aux figures 3-5, se caractérise en ce qu'il comprend les étapes suivantes. Préalablement à tout traitement, un moyen de comptage C est initialisé à une valeur initiale ou d' initialisation, par exemple 0. Le moyen de comptage C est avantageusement disposé en mémoire partagée de manière à être accessible tant par une occurrence de la tâche mère TM que par une occurrence de la tâche fille TF. Ensuite au cours du déroulement du procédé, le moyen de comptage C est incrémenté par chaque occurrence de la tâche mère TM. De manière symétrique, le moyen de comptage C est décrémenté par chaque occurrence de la tâche fille TF. [0039] Ainsi dans un fonctionnement nominal où une occurrence de tâche fille s'exécute après chaque occurrence de tâche mère et avant la prochaine occurrence de tâche mère suivante, tel qu'illustré à la figure 3, le moyen de comptage C est alternativement incrémenté puis décrémenté. L'occurrence TMa de la tâche mère TM incrémente C qui prend la valeur 1. L'occurrence TFa de la tâche fille TF décrémente C qui reprend la valeur initiale O. L'occurrence TMb de la tâche mère TM incrémente C qui reprend la valeur 1. L'occurrence TFb de la tâche fille TF décrémente C qui reprend la valeur 6 initiale 0. L'occurrence TMc de la tâche mère TM incrémente C qui reprend la valeur 1. L'occurrence TFc de la tâche fille TF décrémente C qui reprend la valeur initiale 0, et ainsi de suite. Aussi le moyen de comptage C reprend, à chaque cycle, sa valeur initiale. [0040] Aussi la valeur nominale du moyen de comptage C et connue pratiquement à tout instant. Aussi, pratiquement à tout instant, il est possible de procéder à une vérification de la valeur du moyen de comptage C afin de vérifier que le moyen de comptage C présente bien une valeur nominale correspondant à la valeur attendue en fonctionnement nominal. Dans la positive, tout est nominal et aucune action n'est nécessaire. [0041] Dans la négative, il est possible de procéder à une activation d'une alarme « perte de tâche ». La forme de cette alarme dépend de la fonction associée à la tâche. Il peut s'agir d'un enregistrement d'un état dans une mémoire du calculateur, tel le calculateur moteur, plus particulièrement destiné au personnel de maintenance ou il peut encore s'agir d'une signalisation à l'attention du conducteur du véhicule, par exemple par déclenchement d'un voyant au tableau de bord ou d'un signal sonore. [0042] Cette alarme, peut encore être destinée aux autres modules du logiciel, et permet à ces modules, et plus particulièrement à ceux concernés par les résultats issus des tâches mère TM et fille TF, d'être informés que ces résultats peuvent être incorrects ou corrompus. [0043] Dans la négative, il est encore possible de procéder à une réinitialisation du moyen de comptage C. [0044] La valeur nominale du moyen de comptage C est connue à tout instant : elle est égale à la valeur d'initialisation après décrémentation et avant une nouvelle incrémentation, et est égale à sa valeur d'initialisation augmentée d'un incrément entre une incrémentation et une nouvelle décrémentation. Ainsi, pour peu que l'on connaisse l'état d'activation de la tâche mère TM et/ou de la tâche fille TF la valeur nominale est connue et peut être vérifiée. [0045] Selon une autre caractéristique, le moyen de comptage C est un compteur. Le fonc- tionnement nominal, tel qu'illustré à la figure 3 pourrait laisser penser qu'un moyen de comptage C binaire, tel un booléen ou un sémaphore, pourrait suffire. Cependant la réalité peut être plus complexe. Il peut advenir une situation telle qu'illustrée à la figure 4. Cette situation est limite en ce qu'elle n'est pas totalement nominale, mais n'est cependant pas problématique, en ce qu'aucune disparition de tâche n'est à déplorer. Une telle situation peut subvenir en cas d'engorgement des unités de traitements, cependant insuffisant pour causer une disparition de tâche. [0046] A la figure 4, le moyen de comptage C est initialement égal à 0. L'occurrence TMa de la tâche mère TM incrémente C qui prend la valeur 1 et lance l'exécution d'une oc- 7 currence TFa de la tâche fille TF. Cependant cette occurrence est retardée, de sorte qu'elle s'exécute après l'occurrence suivante TMb de la tâche mère TM. Aussi l'occurrence suivante TMh de la tâche mère TM incrémente à nouveau C qui prend la valeur 2, différente de la valeur nominale 1. L'occurrence TFa de la tâche fille TF s'exécute ensuite et décrémente C qui prend la valeur 1, différente de la valeur nominale/initiale 0. L'occurrence TFb de la tâche fille TF, lancée par l'occurrence TMh de la tâche mère TM, et elle aussi retardée. Aussi l'occurrence suivante TMc de la tâche mère TM incrémente à nouveau C qui prend la valeur 2, différente de la valeur nominale 1. Les occurrences TFb et TFc de la tâche fille TF s'exécutent ensuite et décrémentent toute deux C qui reprend la valeur 0, égale à la valeur nominale/initiale 0. La situation limite est redevenue nominale et aucune occurrence de tâche n'a disparu. [0047] A la figure 5, le moyen de comptage C est initialement égal à 0. L'occurrence TMa de la tâche mère TM incrémente C qui prend la valeur 1 et lance l'exécution d'une occurrence TFa de la tâche fille TF. Cette occurrence TFa décrémente C qui reprend la valeur 0. L'occurrence suivante TMh de la tâche mère TM incrémente à nouveau C qui prend la valeur 1. L'occurrence TFh de la tâche fille TF disparaît. Aussi elle ne peut décrémenter C qui conserve une valeur 1. L'occurrence suivante TMc de la tâche mère TM incrémente à nouveau C qui prend la valeur 2, différente de la valeur nominale qui devrait être 1. L'occurrence TFc de la tâche fille TF s'exécute ensuite et décrémente C qui prend la valeur 1, différente de la valeur nominale/initiale 0. Un écart permanent apparaît entre la valeur du moyen de comptage C et sa valeur nominale, égal au nombre d'occurrence disparues. Cet écart permet de détecter une perte de tâche. [0048] L'utilisation d'un compteur permet de prendre en compte une situation pouvant être limite pendant plusieurs cycles. La valeur du moyen de comptage C au final est indicative d'une perte de tâche. Si le moyen de comptage C reprend sa valeur nominale il ne s'est pas produit de disparition de tâche. De plus un compteur, par son nombre d'incrément relativement à sa valeur d'initialisation, est indicatif du nombre d'occurrences de tâche ayant disparu. [0049] Aussi convient-il, pour réaliser une étape de vérification pertinente, et le cas échéant une étape de réinitialisation, de distinguer si l'on est dans le cas nominal de la figure 3 ou dans le cas limite de la figure 4. [0050] Pour cela, selon une caractéristique avantageuse, il est distingué parmi toutes les oc- currences TMi de la tâche mère TM, respectivement parmi toutes les occurrences TFi de la tâche fille TF, des occurrences sûres. Une occurrence TFi, TMi est considérée sûre lorsqu'elle est suffisamment distante de l'occurrence précédente de la même tâche TM, TF. [0051] Aussi, afin de robustifier le procédé, et de ne pas risquer de fausse détection de dis- parition de tâche, l'étape de vérification et/ou l'étape de réinitialisation n'est réalisée 8 que pour une occurrence d'une tâche mère TM ou fille TF sûre. [0052] Selon une caractéristique, une occurrence TMi, TFi d'une tâche est réputée suf- fisamment distante de l'occurrence précédente TMi-1, TFi-1 lorsque cette distance DM, DF est toujours supérieure à un délai d'activation DA d'une tâche. Par sécurité, cette distance est comparée au délai d'activation DA, préférentiellement multiplié par un facteur de sécurité. Ce facteur de sécurité est préférentiellement compris entre 2 et 3. [0053] Le délai d'activation DA est égal à la durée entre le lancement d'une occurrence d'une tâche fille TF par une tâche mère TM et le début d'exécution de l'occurrence de la tâche fille TF, figuré par un rectangle pointillé sur les figures 1-5. Le délai d'activation DA est sensiblement constant, quelle que soit la période ou pseudopériode entre deux occurrences d'une tâche mère ou fille et les charges des unités de traitement. Il est sensiblement constant, ou du moins indépendant des facteurs pouvant faire varier une distance DM, DF. [0054] La distance DM entre deux occurrences successives de la tâche mère TM, respec- tivement la distance DF entre deux occurrences successives de la tâche fille TF, peut varier en fonction de nombreux facteurs. Un exemple est le cas d'une tâche récurrente acyclique indexée sur un événement lié au cycle moteur. Dans cc cas, la distance DM, DF, se réduit avec l'augmentation du régime moteur. [0055] Dans l'expression « lorsque la distance DM, DF est toujours supérieure à un délai d'activation DA d'une tâche » le mot « toujours » doit être compris dans toute l'étendue de variation de ladite distance DM, DF, soit dans toute l'étendue de variation des facteurs influant sur ladite distance DM, DF. Ainsi pour une tâche synchrone à un évènement moteur, le mot « toujours » doit être compris comme : y compris au régime moteur maximum. [0056] Afin de déterminer si une occurrence TMi, TFi de tâche est sûre, il convient de comparer DA avec la distance DM, DF. Aussi il convient de pouvoir estimer cette distance DM, DF. [0057] Pour cela, afin de calculer une distance mère DM ou fille DF, selon un mode de réa- lisation possible, une occurrence TMi, TMi-1, TMi-2, TFi, TFi-1, TFi-2 d'une tâche, mère TM ou fille TF, enregistre sa date d'exécution respective. Cet enregistrement est préférentiellement réalisé en mémoire partagée M. Ainsi l'occurrence suivante correspondante peut relire cette valeur et calculer la distance DM, DF, en comparant avec sa propre date d'exécution. Cette caractéristique concerne avantageusement la tâche mère TM pour le calcul de la distance mère DM ou la tâche fille TF pour le calcul de la distance fille DF. [0058] La distance ainsi estimée, peut être comparée avec la durée d'activation DA, prise constante, avantageusement affectée d'un coefficient de sécurité. Une occurrence TMi, 9 TFi peut ainsi déterminer si elle est sûre ou non. [0059] Si l'on considère une occurrence sûre, on sait que l'on est dans une situation nominale, telle qu'illustré à la figure 3 ou dans une situation problématique, telle qu'illustré à la figure 5, niais pas dans une situation limite, incluant des chevauchements de tâches, telle qu'illustrée à la figure 4. Aussi la valeur nominale du moyen de comptage C peut être déterminée simplement. [0060] Selon une autre caractéristique, la vérification et/ou la réinitialisation est réalisée par une occurrence TMi de la tâche mère TM et/ou par une occurrence TFi de la tâche fille TE Avantageusement, une telle localisation de l'étape de vérification permet de déterminer la valeur nominale du moyen de comptage C. Dans une occurrence TMi la valeur nominale du moyen de comptage C dépend de la position de l'opération de vérification relativement à l'opération d' incrémentation : avant, elle est égale à la valeur initiale, après, elle est égale à la valeur d'un incrément. De même, dans une occurrence TH la valeur nominale du moyen de comptage C dépend de la position de l'opération de vérification relativement à l'opération de décrémentation : avant elle est égale à la valeur d'un incrément, après elle est égale à la valeur initiale. [0061] Selon une autre caractéristique la tâche mère TM est apériodique. Il s'ensuit que la tâche fille TF est aussi apériodique et selon sensiblement la même pscudo-période. [0062] L'invention est particulièrement avantageuse lorsque la tâche mère TM et la tâche fille TF sont exécutées dans un environnement multi unité de traitement Cl, C2, préférentiellement sur des unités de traitement Cl, C2 différentes. Un tel environnement favorise l'apparition du problème de suppression d'une occurrence d'une tâche. [0063] Selon une autre caractéristique, le procédé est implémenté dans un contrôle moteur, et la tâche mère TM est synchrone à un événement lié au régime moteur. [0064] Le procédé précédemment décrit peut être avantageusement appliqué à un cas d'utilisation particulier de traitement d'un capteur arbre à cames. Dans ce cas d'utilisation, la tâche mère TM est une tâche « détection d'un front sur une cible d'arbre à cames » et la tâche fille TF est une tâche « traitement suite à un front détecté sur la cible d'arbre à cames ». Dans ce cas particulier, une occurrence d'une tâche TM, TF peut être déterminée sûre, telle que précédemment défini, en fonction des caractéristiques de la denture de la roue arbre à cames du capteur : une tâche est sûre pour un front final d'une dent/creux suffisamment longue. [0065] Une dent est suffisamment longue si sa durée temporelle, soit la distance temporelle DM, DF entre deux occurrences successives d'une même tâche TM, TF, y compris au régime moteur maximum, est supérieure à un délai d'activation DA d'une tâche. Par sécurité ce délai d'activation DA est avantageusement multiplié par un facteur de sécurité, préférentiellement compris entre 2 et 3. [0066] Ceci est détaillé en référence à la figure 6. Un capteur arbre à cames comprend une roue dentée comprenant généralement un petit nombre de dents, entre 2 et 10, irrégulières. Cette irrégularité permet par identification de déterminer la position angulaire d'une dent/front donné. Le nombre et les longueurs respectives des dents sont très variables d'un constructeur à l'autre. Aussi la description suivante vise à expliquer le principe de détermination des fronts sûrs, sur la base d'un exemple. [0067] La roue arbre à cames illustrative de la figure 6 comprend 3 dents et 3 creux. Les longueurs sont exprimées, de manière connue, en degrés CRK ou doubles, soit sur 720° au tour. De gauche à droite, la première dent (fronts 5-6) présente une longueur de 180°. Elle est suivie d'un creux (fronts 6-1) de 50°. La deuxième dent (fronts 1-2) présente une longueur de 130°. Elle est suivie d'un creux (fronts 2-3) de 180°. La troisième dent (fronts 3-4) présente une longueur de 20°. Elle est suivie d'un creux (fronts 4-5) de 160°. [0068] Rapporté au domaine temporel, on obtient les durées de dents/creux suivantes pour un régime moteur donné. A 1000 tours/mn : lère dent = 30 ms, 1er creux = 8,33 ms, 2ème dent = 21,7 ms, 2ème creux = 30 ms, 3ème dent = 3,33 ms, 3ème creux = 26,7 ms. En se plaçant maintenant au régime critique, soit le régime maximum de 8000 tr/ mn : l'ère dent = 3,75 ms, ler creux = 1,04 ms, 2ème dent = 2,71 ms, 2ème creux = 3,75 ms, 3ème dent = 0,42 ms, 3ème creux = 3,33 ms. [0069] En considérant une durée d'activation DA de 500 ps ou 0,5 ms, soit 1,5 ms en ap- pliquant un coefficient de sécurité de 3, il apparaît que le ler creux (fronts 6-1) et la 3ème dent (fronts 3-4) présentent une durée inférieure. Aussi les fronts finaux (fronts 1 et 4) sont considérés comme non sûrs. Les autres fronts 2, 3, 5 et 6 sont considérés comme sûrs. En conséquence une occurrence de la tâche TMi, TFi déclenchée sur les fronts 1 et 4 n'est pas considérée sûre et n'est pas autorisée à effectuer une vérification et/ou une réinitialisation du moyen de comptage C. A contrario une occurrence de la tâche TMi, TFi déclenchée sur les fronts 2, 3, 5 ou 6 est considérée sûre et peut être autorisée à effectuer une vérification et/ou une réinitialisation du moyen de comptage C. [0070] Ainsi tel qu'illustré par l'exemple précédent, l'analyse du profil de la roue du capteur arbre à cames permet de déterminer, a priori, quels fronts, et donc quelles occurrences de tâche TMi, TFi, sont sûrs. [0071] Ceci permet dans ce cas particulier de faire l'économie d'un calcul de distance DM, DF, tel que décrit précédemment, par enregistrement et comparaison des dates d'exécution. [0072] L'invention est décrite dans ce qui précède à titre d'exemple. Il est entendu que la personne de l'art est à même de réaliser différentes variantes de réalisation de l'invention, en associant par exemple les différentes caractéristiques ci-dessus prises seules ou en combinaison, sans pour autant sortir du cache de l'invention. 11 [Revendication 1]