Processing

Please wait...

PATENTSCOPE will be unavailable a few hours for maintenance reason on Tuesday 26.10.2021 at 12:00 PM CEST
Settings

Settings

Goto Application

1. WO2014167197 - METHOD FOR EXECUTING TASKS IN A CRITICAL REAL-TIME SYSTEM

Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

[ FR ]

Revendications

1. Procédé d'ordonnancement hors-ligne des traitements formant une tâche conforme à un modèle flexible pour un système multitâche temps-réel, procédé comprenant les étapes suivantes mises en œuvre dans une chaîne de compilation d'un code source définissant la tâche :

a) affecter à chaque traitement un besoin en ressources matérielles et une contrainte temporelle ;

b) associer à chaque traitement un créneau temporel ayant une durée correspondant à la contrainte temporelle du traitement ;

c) identifier un point de branchement auquel est décidée l'exécution de l'un ou l'autre de deux traitements alternatifs (a, b) ;

d) associer aux deux traitements alternatifs un créneau temporel commun (+2) ;

e) affecter au créneau temporel commun un besoin (max(a, b)) égal au plus grand des besoins des deux traitements alternatifs ;

f) réitérer à partir de l'étape c) pour chaque point de branchement ;

g) organiser les créneaux temporels résultants dans un gabarit d'exécution associé à la tâche ; et

h) produire des paramètres d'ordonnancement statiques pour le système multitâche à partir du gabarit d'exécution.

2. Procédé selon la revendication 1, dans lequel le code source représente la tâche à l'aide d'un graphe définissant un ensemble de traitements reliés par des nœuds de transition, dans lequel chaque nœud de transition définit un point de synchronisation selon une base de temps lors de l'exécution de la tâche sur le système multitâche, le procédé comprenant les étapes suivantes :

• définir les limites du créneau temporel associé à chaque traitement à partir des nœuds de transition source et destination du traitement ;

• pour deux traitements alternatifs ayant un nœud source commun (1) et deux nœuds cible respectifs (2, 3), fusionner les deux nœuds cible en un nœud cible fusionné (2_3) ; et

• définir le créneau temporel commun aux deux traitements alternatifs à partir du nœud source commun et le nœud cible fusionné (2_3).

3. Procédé selon la revendication 2, comprenant, pour deux traitements alternatifs (b+1, c+4) ayant à l'étape c) des contraintes temporelles différentes, les étapes suivantes :

• créer un nœud de transition intermédiaire (3b) dans un premier (c) des deux traitements alternatifs (c+4), celui ayant la contrainte temporelle la plus longue, d'où il résulte un premier traitement partiel alternatif (c1) entre le nœud source et le nœud intermédiaire, et un deuxième traitement partiel (c2) entre le nœud intermédiaire et le nœud cible du premier traitement alternatif ;

• affecter au premier traitement partiel alternatif un premier besoin (c1) et une contrainte temporelle (+1) égale à la contrainte temporelle du deuxième traitement alternatif ;

• affecter au deuxième traitement partiel un deuxième besoin (c2) tel que la somme des premier et deuxième besoins soit égale au besoin du premier traitement alternatif (c), et une contrainte temporelle (c2) égale à la différence des contraintes temporelles des deux traitements alternatifs ; et

• procéder avec le premier traitement partiel alternatif (c1+1) et le deuxième traitement alternatif (b+1) selon l'étape d).

4. Procédé d'exécution d'une tâche ordonnancée selon la revendication 3, comprenant les étapes suivantes mises en œuvre dans le système multitâche :

• dans chaque créneau temporel, vérifier par un chien de garde que l'exécution du traitement en cours respecte le besoin affecté au créneau temporel ; et

• ne pas signaler d'anomalie par le chien de garde si l'exécution du traitement en cours dépasse le besoin et que le traitement en cours est le premier traitement partiel alternatif (c1).

5. Procédé selon la revendication 4, comprenant les étapes suivantes :

• activer une variable d'état (B=1) à l'exécution du premier traitement partiel alternatif (c1) ;

• ne pas signaler d'anomalie par le chien de garde si l'exécution du traitement en cours dépasse le besoin et que la variable d'état est active ; et

• désactiver la variable d'état à un point de synchronisation correspondant à un nœud cible fusionné (2_3).

6. Procédé selon la revendication 3, comprenant les étapes suivantes pour une partie cyclique du graphe :

• diviser chaque traitement (c2|d) ayant une contrainte temporelle longue en un ensemble de traitements partiels ayant une contrainte temporelle courte qui est le plus grand commun diviseur des contraintes temporelles des traitements de la partie cyclique, d'où il résulte que la partie cyclique du graphe est transformée en un sous-graphe normalisé définissant une succession de traitements, complets ou partiels, ayant tous la même contrainte temporelle normalisée ; et

• répartir le besoin de chaque traitement de contrainte temporelle longue entre les traitements partiels correspondants, d'où il résulte que la somme des besoins des traitements partiels est égale au besoin du traitement de contrainte temporelle longue.

7. Procédé selon la revendication 6, comprenant les étapes suivantes :

• superposer la fin d'une première partie du sous-graphe sur le début d'une deuxième partie du sous-graphe, de sorte que les nœuds de transition de la fin de la première partie du sous-graphe (1, 2, 3_3b) soient confondus avec des nœuds respectifs (4a, 4b, 4) du début de la deuxième partie du sous-graphe, d'où il résulte que deux paires consécutives de nœuds confondus définissent un créneau temporel commun aux traitements ayant pour origines respectives les deux nœuds de la première paire ; et

• affecter au créneau temporel commun ainsi défini un besoin égal au plus grand des besoins des traitements associés à la première paire de nœuds, et une contrainte temporelle égale à la contrainte temporelle normalisée.