Brevet FR3071334A1 (20190322)

REVENDICATIONS:\n<CLM>\1\tProcédé de protection en stabilité d'au moins une donnée variable (D1), pour un programme ou une partie de programme comprenant au moins deux tâches mises en oeuvre par un microprocesseur multicoeur, ledit procédé comprenant : - la détermination d'au moins une donnée variable (D1) à protéger de façon systématique, ladite donnée variable à protéger (D1) de façon systématique consistant en une donnée variable produite et consommée, respectivement, par au moins deux tâches, exécutées en parallèle sur deux coeurs distincts du microprocesseur multicoeur, chaque coeur formant une unité de traitement indépendante, lesdites au moins deux tâches présentant chacune une priorité d'exécution et consistant en au moins une tâche productrice (A) de ladite donnée variable à protéger (D1) et au moins une tâche consommatrice (B) de ladite donnée variable à protéger (D1), ladite tâche consommatrice (B) présentant une priorité d'exécution supérieure à celle de la tâche productrice (A), ladite tâche consommatrice (B) réalisant au moins deux accès à la donnée variable à protéger (D1) durant l'exécution de ladite tâche consommatrice (B), par l'intermédiaire de l'exécution successive d'une ou plusieurs fonctions consommatrices (F1, F2), de sorte que ladite donnée variable à protéger (D1) soit susceptible d'avoir évolué entre lesdits au moins deux accès, - l'implémentation d'une fonction de protection (FO) de ladite donnée variable à protéger de façon systématique lors de l'exécution de la tâche consommatrice (B), de sorte que les deux accès réalisés par la tâche consommatrice (B) consomment une donnée variable à protéger (D1) ayant une valeur constante pour l'exécution considérée de la tâche consommatrice (B).\n<CLM>\1\tProcédé selon la revendication 1, dans lequel ladite fonction de protection (FO) consiste en une fonction de copie locale (FO), dans la tâche consommatrice (B), de la valeur de ladite donnée variable à protéger (D1) au début de l'exécution de ladite tâche consommatrice (B).\n<CLM>\1\tProcédé selon l'une des revendications précédentes, dans lequel ladite tâche productrice (A) consiste en une tâche périodique.\n<CLM>\1\tProcédé selon l'une des revendications précédentes, dans lequel ladite tâche consommatrice (B) consiste en une tâche périodique. 15\n<CLM>\1\tProcédé selon l'une des revendications 1 à 3, dans lequel ladite tâche consommatrice (B) est une tâche synchrone destinée à réaliser au moins deux accès successifs à la donnée variable à protéger (D1) lors d'une exécution de ladite tâche synchrone (B).\n<CLM>\1\tProcédé selon l'une des revendications précédentes, comprenant la protection en 5 stabilité d'au moins une donnée variable (D1) définie comme étant à protéger de façon différenciée, ladite donnée variable (D1) à protéger de façon différenciée étant produite et consommée, respectivement, par au moins deux tâches, exécutées en parallèle sur deux coeurs distincts du microprocesseur multicoeur, lesdites au moins deux tâches présentant une priorité d'exécution quelconque et consistant en au moins une 10 deuxième tâche productrice de ladite donnée variable à protéger (D1) et au moins une deuxième tâche deux fois consommatrice de ladite donnée variable à protéger (D1), le procédé comprenant la mise en oeuvre d'une fonction de protection (FO) de ladite donnée variable à protéger de façon différenciée, au début de l'exécution de ladite deuxième tâche consommatrice, uniquement si ladite donnée variable (D1) est définie 15 comme étant une donnée variable à protéger de façon différenciée.\n<CLM>\1\tProcédé selon la revendication précédente, dans lequel ladite fonction de protection consiste en une fonction de copie locale (FO), dans la deuxième tâche consommatrice, de ladite donnée variable.\n<CLM>\1\tProcédé selon l'une des revendications 6 à 7, dans lequel ladite deuxième tâche 20 productrice consiste en une tâche périodique.\n<CLM>\1\tProcédé selon l'une des revendications 6 à 8, dans lequel ladite deuxième tâche consommatrice consiste en une tâche périodique.\n<CLM>\1\tProcédé selon l'une des revendications 6 à 8, dans lequel ladite deuxième tâche consommatrice est une tâche synchrone destinée à réaliser au moins deux accès 25 successifs à la donnée variable à protéger (D1) lors d'une exécution de ladite tâche synchrone.