270 likes | 522 Views
Introduction. Qu'est ce que le temps-réel ? Exemples d'applications temps-réel Limites des systèmes classiques pour le temps réel Exercices. Qu'est ce que le temps-réel ?. Le terme de temps-réel est employé pour désigner le temps. physique. Qu'est ce que le temps réel ?.
E N D
Introduction • Qu'est ce que le temps-réel ? • Exemples d'applications temps-réel • Limites des systèmes classiques pour le temps réel • Exercices
Qu'est ce que le temps-réel? Le terme de temps-réel est employé pour désigner le temps physique.
Qu'est ce que le temps réel ? • On définit un système temps réel comme un système dont le comportement dépend, non seulement de l'exactitude des traitements effectués, mais également du temps où les résultats de ces traitements sont produits. • Objectifs lors de la conception : système prédictible. • Déterminisme logique : une même entrée appliquée au système produit toujours la même sortie. • Déterminisme temporel : les contraintes de temps sont respectées. • Fiabilité : le système (logiciel, matériel) répond à des contraintes de disponibilité.
Qu'est ce que le temps réel ? Un retard est considéré comme une erreur qui entraîne de graves conséquences. • On définit un système temps réel comme un système dont le comportement dépend, non seulement de l'exactitude des traitements effectués, mais également du temps où les résultats de ces traitements sont produits. • Le temps réel entre donc dans le critère de correction des applications.
Qu'est ce que le temps réel ? • On définit un système temps réel comme un système dont le comportement dépend, non seulement de l'exactitude des traitements effectués, mais également du temps où les résultats de ces traitements sont produits. • Ordre de grandeur du temps
Contraintes de temps fenêtre x • Limite quantifiée sur le temps séparant deux événements. • Cette limite est soit la limite min et/ou la limite max. Système S E x
Définitions : temps réel dur et temps réel lâche • Une échéance est qualifiée de dure (hard dealine) lorsque le résultat d'un traitement arrive et provoque une exception dans le système. • Si le retard ne provoque pas d'exception dans le système, on dit que l'échéance est lâche (soft deadline).
Définitions : temps réel dur et temps réel lâche • Questions : Classer en soft ou hard : • traitement d'images dans une vidéoconférence, • contrôle de radioactivité de centrale nucléaire.
Le système temps réel et son environnement Capteurs Actionneurs • Le système temps réel est un système en interaction avec son environnement. • Il peut être modélisé par un système qui se compose d'un processeur central et de périphérique d'entrées/sorties (capteurs,actionneurs). Processeur Temps réel Collecte les signaux ou événements Réactions vis à vis des événements La réaction du système s'effectue au travers de commandes
Interactions du système avec l'environnement • Les interactions entre le système temps réel et son environnement peuvent s'effectuer soit à des moments déterminés : • par une référence de temps interne au système (time driven) • par l'environnement lui même (event-driven system) • Lorsque le système doit répondre dans un temps limité à des événements externes, on parle de système réactif.
Prévisibilité (predictability) • L’un des aspects importants des systèmes temps réel est la prévisibilité du système ; un système temps réel doit être conçu de telle façon que ses performances soient définies dans le pire des cas (dans un système classique on s'intéresse au traitement moyen) • La prévisibilité est ce qui permet de déterminer à l’avance si un système va respecter ses contraintes temporelles. • La politique d'ordonnancement des activités est à déterminer en fonctions des paramètres liés aux calculs des activités.
Les sources de non déterminismes • Les sources de non déterminismes sont : • Charge de calcul : variation des durées d'exécution des activités • Entrées/sorties : profil d'arrivée, durée des communications, temps de réaction. • Interruptions : temps de réaction du système • Fautes et exceptions matérielles ou logicielles.
La fiabilité (reliability) • Un aspect important est la fiabilité d'un système. Si les composants matériels ou logiciels ne se sont pas fiables, on ne peut prédire le comportement du système. • Ainsi, les systèmes temps réel sont souvent conçus de façon à être tolérants aux pannes (fault tolerant)
Les systèmes embarqués (embedded systems) • Si l'intervention humaine directe est impossibles, on parle de systèmes embarqués. La connaissance a priori du comportement de tels systèmes est essentielle. • Ce sont souvent des systèmes dédiés (dedicated) à la fois du point de vue matériel et logiciel, pour les besoins d'une application spécifique. • Définition : Système informatique dans lequel le processeur est englobé dans un système plus large et/ou le logiciel est entièrement dédié à une application donnée.
Systèmes répartis • Un système réparti est un ensemble de machines autonomes connectées par un réseau, et équipées d'un logiciel dédié à la coordination des activités du système ainsi qu'au partage de ses ressources. • Le système est généralement réparti et temps réel pour des raisons de fiabilité, contraintes industrielles, partage de ressources.
Exemple d'applications temps réel • Un Robot • Un combiné de radio téléphone GSM • Un système de Vidéo Conférence
Un système de Vidéo Conférence • Ces caractéristiques ? • Prise en compte du temps • Expression des contraintes temporelles • Contraintes dures ou non • Système : dédié, embarqué, général
Un système de Vidéo Conférence 1 • On veut bâtir un système de vidéo conférence sur un réseau local • Le système numérise le signal vidéo • Il le transforme en séquence d'images (30 trames/seconde) • A cause du débit du réseau, il faut compresser l'image avant de la transmettre • Les opérations, compression, accès au réseau sont effectués par des périphériques matériels spécialisés pilotés par des logiciels de la station
Un système de Vidéo Conférence 2 • Plusieurs opérations doivent s'enchaîner dans le temps ; Numération, Compression, la transmission. • La somme des temps donne le temps de latence du système, c'est à dire le temps mesuré entre l'instant où le signal commence à être numérisé et l'instant où la première trame est envoyée sur le réseau. • Il faut minimiser ce temps de latence • Le système doit réduire le temps passé entre l'envoi de deux trames successives. Pour cela pendant la compression, on numérise une autre image et pendant la transmission une image peut être compressée : Les traitements sont effectués en cascade.
Un système de Vidéo Conférence 3 • Mais cet enchaînement ne peut se faire n'importe comment. • Les activités sont synchronisées les unes par rapport aux autres. • Si l'on connaît le temps passé dans chaque module on peut fixer cette synchronisation. • Mais un réseau local est partagé par plusieurs stations . On a des phénomènes de surcharge, il faut donc passer à un mode dégradé (soft contraintes); • Conclusion • Le système comporte des contraintes temporelles. A certains moments, elles tolèrent ne pas être respectées. Son architecture est générale, elle peut être reprise pour faire fonctionner d'autres types d'applications.
Limitations des systèmes classiques • Ils sont trop mal adaptés • Les politiques d'ordonnancement des activités mise en œuvre partagent équitablement le temps d'exécution. • Les mécanismes d'accès aux ressources partagées et de synchronisation doivent être adaptés, afin d'éliminer les incertitudes temporelles. • L'utilisation des caches engendrent des fluctuations dans le temps d'exécution des activités du système. • Solution • Il faut pouvoir indiquer au support d'exécution le degré d'urgence d'une activité ou d'une interruption pour éliminer les sources d'incertitudes temporelles.
Exercices • Répondre par oui ou par non. • Un système temps réel est un système classique mais qui va plus vite. • Le système qui contrôle un ascenseur est un système temps réel. • On peut exécuter une application temps réel sur n'importe quel système.
Conclusion • Classement des systèmes temps réel selon : • Leur besoin en garantie de service. • Il existe plusieurs niveaux de contraintes Système temps réel dur ou critique Système temps réel souple • Leur environnement • Système embarqués ou enfouis • Système répartis