Priorité Des Tâches; Gestion Des Tâches - SERAD MCS 32 EX Guide D'utilisation

Table des Matières

Publicité

Documentation MCS32
4-3-2- Priorité des tâches
Chaque tâche utilisateur possède un niveau de priorité : priorité haute, priorité normale.
Le moniteur multitâche alloue deux tranches d'exécution : la tranche de priorité haute pour les
tâches de priorité haute, une tranche de priorité normale pour les tâches de priorité normale.
L'enchaînement des tranches pendant l'exécution est le suivant :
| tranche priorité haute | tranche priorité normale | tranche priorité haute | tranche priorité
normale | ...
Tranche priorité haute :
Toutes les tâches de priorité haute sont effectuées l'une après l'autre dans cette tranche. Chaque
tâche exécute ces instructions jusqu'à la condition de basculement (rencontre d'une instruction
bloquante, vieillissement atteint ...).
Temps maxi exécution tranche priorité haute = nombre de tâches priorité haute * temps de
vieillissement
Le « temps de vieillissement » est paramétrable à partir du menu Options et est identique pour
les tâches de priorité haute et normale. Il est nécessaire de recompiler les tâches après une
modification.
Tranche priorité normale :
Les tâches de priorité normale sont effectuées l'une après l'autre dans cette tranche. Chaque
tâche exécute ces instructions jusqu'à la condition de basculement (rencontre d'une instruction
bloquante, vieillissement atteint ...).
Temps exécution tranche normale = temps tranche normale
Temps maxi exécution tranche normale = temps tranche normale + temps de vieillissement
Le « temps tranche normale » est paramétrable à partir du menu Options. Il est nécessaire de
recompiler les tâches après une modification.
Si la durée d'exécution de toutes les tâches normales est inférieure à « temps tranche normale
», toutes les tâches sont exécutées puis on enchaîne sur la tranche priorité haute.
Dans le cas contraire, le système redonne la main à la tranche priorité haute alors que toutes les
tâches normales n'ont pas été exécutées. Elles seront traitées dans la tranche normale suivante.
Exemple :
T1, T2
: tâches priorité haute
T3, T4, T5, T6
Temps de vieillissement = 2 ms
Temps tranche normale = 6 ms
L'exécution sera de la forme | T1,T2 | T3,T4,T5 | T1,T2 | T6,T3,T4 | T1,T2 |
T5,T6,T3 | ...
4-3-3- Gestion des tâches
Chaque tâche possède un mode de démarrage qui a été paramétré lors de sa création :
Démarrage automatique : à chaque démarrage de la MCS, la tâche est lancée
automatiquement.
Démarrage manuel : la tâche n'est pas lancée automatiquement.
Un projet doit au moins contenir une tâche avec démarrage automatique. Il est conseillé d'avoir
une seule tâche dans laquelle on écrit toute la partie initialisation de l'application et ensuite on
lance les autres tâches.
On dispose de 5 instructions pour gérer les tâches :
R342
EX
: tâches de priorité normale
- 79 -
SERAD S.A.

Publicité

Table des Matières
loading

Table des Matières