Cours Temps Réel
LT LA SALLE Page 1 / 21 ©TV.BTSii.2001
TABLE DES MATIERES
I . Introduction aux Systèmes Temps Réel
1 . Définition du Temps Réel
2 . Caractéristiques des STR
3 . Domaine d'applications
4 . Notions de base
4 . 1 . Temps de réponse
4 . 2 . Le déterminisme
4 . 3 . La préemption
4 . 4 . Les interruptions
4 . 5 . Le multitâche
4 . 6 . Tâches périodiques et apériodiques
4 . 7 . Horloge temps réel
4 . 7 . Caractéristiques et performances temporelles
II . Présentation de LynxOs
1 . LynxOs et Lynx RTS
2 . LynxOs : un noyau temps réel nouveau
3 . LynxOs et POSIX
III . Présentation de RTAI - Linux
1 . Introduction
2 . Architecture RTAI
3 . Caractéristiques
IV . Exercices
1 . Ordonnancement
2 . Niveau de priorité et temps de réponse
3 . Déterminisme et temps réel
Cours Temps Réel
LT LA SALLE Page 2 / 21 ©TV.BTSii.2001
I . Introduction aux Systèmes Temps Réel
1 . Définitions du Temps Réel
L'introduction du multitâche avec la technique de partage du temps (time-sharing) date
de 1967. La première apparition du terme temps réel se situe en 1970 et coïncide avec
l’apparition des microprocesseurs dans l’environnement industriel.
« Un système fonctionne en Temps Réel s’il est capable d’absorber toutes les
informations en entrée avant qu’elles soient trop vielles pour l’intérêt qu’elles
présentent et de réagir à celles-ci suffisamment vite pour que cette réaction est
un sens »
(ABRIAL BOURGNE).
« Un résultat juste, mais hors délai, est un résultat faux ».
Les systèmes temps réel (hard real time) ne peuvent en aucun cas tolérer une réponse
tardive, les conséquences d'une telle réponse peuvent être catastrophiques (ex : système
de pilotage automatique d'avion).
2 . Caractéristiques des Systèmes Temps Réel
Pour commander un environnement industriel, il faudra respecter les contraintes de
temps.
Le temps d’exécution d’une tâche doit être connu et non soumis à des variations liées à
la charge du système.
Au niveau matériel, la décomposition la plus courante est la suivante :
De nos jours, un calculateur embarqué signifie implicitement calculateur temps réel
embarqué.
Données / Event (IT)
Messages
STR
A
C
Processus
Opérateur
Infos Signal
Action Signal
Infos
Cours Temps Réel
LT LA SALLE Page 3 / 21 ©TV.BTSii.2001
Au niveau logiciel, on distingue : l’exécutif Temps Réel (le noyau) et l’application Temps
Réel (les tâches).
Exemples d’OS Temps Réel :
LynxOs, OS9, MTR86, RT- RTAI LINUX, pSOS, VRTX, …
3 . Domaines d'application
système de commande et de contrôle de processus industriels ;
système de contrôle aériens ;
systèmes embarqués dans les avions, navettes spatiales, fusées ;
gestion des stations spatiales ;
système de défense ;
surveillance médicale intensive ;
coordination des collectivités mixtes robots-humains ;
gestion automatique du trafic et du transport urbain ;
le multimédia ;
les systèmes de télécommunication,
... etc ...
MATERIEL
Attrib. UC
Synchro
LANGAGE TR
tâches
Cours Temps Réel
LT LA SALLE Page 4 / 21 ©TV.BTSii.2001
4 . Notions de base
4 . 1 . Temps de réponse
Pour fournir une réponse, un système doit reconnaître, traiter et sortir un résultat. Le
temps de réponse TR est le suivant :
TR = Tcalcul + TE/S
L'apparition d'un phénomène implique l'exécution d'une action effective au plus tard dans
un délai TR appelé temps de réponse. Il convient de considérer :
les valeurs ou les ordres de grandeur de TR ;
la possibilité ou non de choisir TR ;
les répercussions sur le système du non respect de la contrainte TR.
Il faut relativiser la notion temps réel car tous les systèmes n'ont pas les mêmes
exigences. Le temps de réponse des STR peut aller de quelques dizaines de µs pour les
systèmes radars à quelques heures pour des systèmes de surveillance de réactions
chimiques (voire plusieurs années dans des systèmes utilisés en astronomie).
Il existe globalement deux situations :
les systèmes transactionnelsl'on a une tolérance statistique (pour le non
respect des contraintes de temps) ;
la commande de processus où les respect d'un délai de réponse TR doit être garanti
dans tous les cas sous peine de voir une dégradation ou un effondrement du système.
4 . 2 . Le déterminisme
Un système sera dit "déterministe" lorsque le temps maximal qu'il mettra pour traiter
une tâche quelconque sera connu et déterminé à l'avance.
Il convient de considérer les différents niveaux constituant le système :
au niveau processeur : le déterminisme est total.
au niveau de l'exécutif : il sera déterministe si son temps de réponse est
indépendant de sa charge.
au niveau du système : il sera déterministe s'il est capable de répondre à une
requête et la traiter en un temps maximum indépendant de l'environnement
extérieur.
4 . 3 . La préemption
La préemption est un des outils mis en œuvre pour assurer l'aspect déterministe d'un
système. La préemption se définit comme la réquisition du processeur pour
l'exécution d'une tâche et d'une seule pendant un temps déterminé.
Cours Temps Réel
LT LA SALLE Page 5 / 21 ©TV.BTSii.2001
Un ordonnancement statique à base de priorités peut se dérouler de deux façons
distinctes :
ordonnancement sans préemption : lorsque le processeur est inactif, la tâche
prête de plus haute priorité sera choisie pour être exécutée. Une fois choisie, elle
s'exécute jusqu'à ce qu'elle soit terminée.
ordonnancement avec préemption : lorsque le processeur est inactif, la tâche
prête de plus haute priorité sera choisie pour être exécutée. A chaque instant cette
tâche peut être préemptée (remplacée) par n'importe quelle tâche plus
prioritaire qui serait devenue prête.
Dans les systèmes temps réel, il existe une convention qui consiste à prendre la valeur 0
comme étant la priorité absolue. Donc, une tâche de priorité 1 est plus prioritaire (plus
urgente) qu'une tâche de priorité 2, ...
La préemption intervient au niveau processeur.
4 . 4 . Les interruptions
Une IT est provoquée par la validation d’une ligne nommée généralement IRQ (Interrupt
ReQuest).
Le traitement général d’une IT :
- fin du traitement en cours
- prise en compte de l’IT
- traitement de l’IT
- retour au traitement interrompu.
La gestion des IT est une caractéristique essentielle d’un exécutif TR.
Le masquage des interruptions est un autre moyen propre à assurer un certain
déterminisme et intervient au niveau processeur. Ce moyen est donc totalement
indépendant de la préemption.
On distingue alors :
Dans un ordonnancement non préemptif, les interruptions ne sont pas masquées.
Par contre, lors du masquage des IT, le système est, par la force des choses, dans un
mode non préemptif.
Le masquage des IT peut être provoquée de deux manières :
soit par l'arrivée d'une IT où le masquage est réalisé par le processeur lui-même.
soit à la demande de l'exécutif, auquel cas il s'agit d'une section de code
critique (souvent réduite à quelques instructions)..
1 / 21 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !