0% ont trouvé ce document utile (0 vote)
125 vues18 pages

Chap3 RTOS Part12

Ce document décrit les concepts de base de la gestion des tâches dans les systèmes temps réel, notamment les différents types de tâches, leurs paramètres, leurs états, et les algorithmes d'ordonnancement les plus utilisés comme FCFS.

Transféré par

eyabouraoui0
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
125 vues18 pages

Chap3 RTOS Part12

Ce document décrit les concepts de base de la gestion des tâches dans les systèmes temps réel, notamment les différents types de tâches, leurs paramètres, leurs états, et les algorithmes d'ordonnancement les plus utilisés comme FCFS.

Transféré par

eyabouraoui0
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

RTOS

Chapitre 3: Gestion des tâches et


algorithmes d'ordonnancement
Enseignante: Hanene ZORMATI
[Link]@[Link]
A.U: 2023-2024
Introduction
• Préemptif
• une tâche élue peut perdre le processeur au profit d'une tâche plus
prioritaire (ou une interruption).
• Collaboratif ou non Préemptif
• une fois élue, la tâche ne doit plus être interrompue jusqu’à la fin de
la requête.

2
Introduction

3
Les tâches
• Une tâche est une unité logicielle effectuant une action de contrôle
d’un processus spécifique et s’exécutant sous contrôle d’un RTOS.

4
Types des tâches

• Tâches périodiques (cycliques) :Elles sont définies par la période avec


laquelle elles sont censées s’exécuter, ce qui est géré par
l’ordonnanceur
• Tâches apériodiques : Elles sont des tâches exécutées à intervalles
irréguliers à n’importe quel instant. Les interruption jouent alors un
rôle important puisqu’elles sont le principal vecteur d’activation.

5
Types des tâches

• Tâches indépendantes : ne présentent pas de relation de précédence


et ne partagent pas des ressources critiques.
• Tâches dépendantes : suivant ou précédant d'autres tâches parce
qu'elles se synchronisent ou communiquent entre elles.

6
Paramètres d’une tâche
Di

Ci
Ti
ri si fi
di
TR
r: la date de réveil de la tâche (date d’arrivée)
C: durée d’exécution, calculée en temps processeur
D: délai critique
d: échéance d=r+D
s: date de début d’exécution de la tâche
f: date de fin d’exécution de la tâche
TR=f-r; temps de réponse
L’échéance est respectée si TR<=D 7
Paramètres d’une tâche
Tâche apériodique: est représentée par le truple T(r,C,D)
Tâche périodique: est représentée par le quadruplet T(r,C,D)

P: la période d’une tâche

8
Différents états d'une tâche:
Différents états d'une tâche:
• Élue (courante) : la tâche est en service, c.-à-d., en cours d’exécution,
• Prête : si la tâche dispose de toutes les ressources nécessaires à son
exécution à l'exception du processeur,
• Bloquée (en attente) : si la tâche ne dispose pas de toutes les
ressources nécessaires à son exécution, ou elle attente qu’un
événement se produit pour pouvoir continuer,
• Dormante : la tâche n’entre pas dans l’ordonnancement ou elle a
terminé la fonction pour laquelle elle a été conçue

9
Différents états d'une tâche:
• Les transitions entre les états prouvent être schématisées comme
suit:

10
Différents états d'une tâche:
Plus la tâche est importante du point de vue temporel, plus la
priorité qu’on lui assigne est élevée

Les priorités de la tâche peuvent être:


Statiques: priorités fixes, ne changent pas de valeur pendant
l’exécution de l’application
Dynamiques: priorités pouvant changer pendant l’exécution de
l’application

11
Ordonnancement temps réel :
Planification de l’exécution des tâches de façon à respecter les
contraintes temporelles. Il détermine l’ordre d’allocation du processeur.
L’ordonnancement a pour deux objectifs majeurs :
• En fonctionnement normal : respecter les contraintes temporelles
pour toutes les requêtes.
• En fonctionnement anormal: (surcharge ou présence d'incidents →
tâches supplémentaires suite à des anomalies : alarmes, fautes
temporelles...) : atténuer les effets des surcharges et maintenir un
état cohérent et sécuritaire par l'exécution d'au moins les requêtes
vitales.

12
Ordonnancement temps réel :

Ordonnancement des taches.

13
Performances des algorithmes
d'ordonnancement :
o Temps de rotation = temps fin d’exécution - temps d'arrivée.
o Temps d'attente = temps de rotation - Durée d'exécution.
o Temps moyen d'attente = Σ (temps d'attente) / nombre de processus.
o Rendement = Σ (temps d'exécution) /Temps de rotation.
Di

Ci
Ti
ri si fi
di
TR
14
Algorithmes d'ordonnancement les plus
utilisés
• Ordonnancement FCFS (First Come First Served):
Connu sous le nom FIFO (First In, First Out), en français (premier arrivé,
premier servi) ; les processus sont rangés dans la file d’attente des
processus prêts selon leur ordre d’arrivée.

15
Algorithmes d'ordonnancement les plus
utilisés
• Ordonnancement FCFS (First Come First Served):
Exemple

• Déterminer le temps d’attente pour les processus, temps moyen d'attente,


débit=nbre de processus / temps et le temps moyen de rotation:

16
Algorithmes d'ordonnancement les plus
utilisés
• Si les mêmes processus arrivent à 0 mais dans l’ordre P2, P3, P1. Le
diagramme de Gantt est :

• Déterminer le temps d’attente pour les processus, temps moyen


d'attente, débit et le temps moyen de rotation

17
Algorithmes d'ordonnancement les plus
utilisés
• Ordonnancement FCFS (First Come First Served):
Avantages :
• Simple.
Inconvénients :
• Le temps moyen d’attente peut varier grandement,
• Les tâches de faible temps d’exécution sont pénalisées si elles sont
précédées dans la file par une tâche de longue durée.

18

Vous aimerez peut-être aussi