Introduction aux Systèmes Temps Réel

Documents pareils
Ordonnancement temps réel

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Analyse du temps de réponse des systèmes temps réel

Impact de choix d implantation sur les performances d une application de Contrôle-Commande

Introduction au temps réel

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Cours A7 : Temps Réel

1 Mesure de la performance d un système temps réel : la gigue

Introduction aux systèmes temps réel. Iulian Ober IRIT

CAP CAMION A ASSISTANCE PNEUMATIQUE

Cours A7 : Temps Réel

Votre Réseau est-il prêt?

BTS SYSTEMES ELECTRONIQUES

Ordonnancement temps réel et minimisation de la consommation d énergie

Partie 7 : Gestion de la mémoire

Mettre en oeuvre l authentification forte. Alain ROUX Consultant sécurité

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

TESTS D'HYPOTHESES Etude d'un exemple

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

MÉTHODOLOGIE PROJET SYSTÈME D INFORMATION DÉCISIONNEL BI - BUSINESS INTELLIGENCE. En résumé :

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

CHAPITRE 4 LA VALORISATION DES STOCKS COURS DE COMPTABILITE ANALYTIQUE SEMESTRE 2 DUT TC

Loi n du 13 juin 2006 relative à la transparence et à la sécurité en matière nucléaire

MANAGEMENT DES SYSTEMES D INFORMATION ET DE PRODUCTION MSIP

Introduction aux systèmes temps réel

Conception des systèmes répartis

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Machines virtuelles Cours 1 : Introduction

STI2D : Enseignements Technologiques Transversaux

Concevoir et déployer un data warehouse

Administrateur de Parc PC

Algorithmique et systèmes répartis

Pourquoi OneSolutions a choisi SyselCloud

Drive your success. «Un écosystème complexe implique une capacité de gestion temps réel des aléas»

Comment valoriser votre patrimoine de données?

Évolution de schémas dans les entrepôts de données mise à jour de hiérarchies de dimension pour la personnalisation des analyses

Systèmes et exécutifs temps-réel

Extrait du site de l'oseo (ex.anvar) Reste à déterminer les points incontournables

IPBX 02 : TP MISE EN OEUVRE RTC ET TOIP. Ce sujet comporte 4 pages de texte suivi du corrigé

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

AXES DE RECHERCHE - DOMAINE D'INTERET MAJEUR LOGICIELS ET SYSTEMES COMPLEXES

Eric Bertrand 08/11/06 Maître de conférence 1

Détection des deux roues motorisés par télémétrie laser à balayage

la solution vidéo numérique qui offre une surveillance simple et puissante t: +44 (0) e: w:

Annexe 6. Notions d ordonnancement.

Méthodes de développement

Ordonnancement robuste et décision dans l'incertain

Algorithmique des Systèmes Répartis Protocoles de Communications

Comptabilité Générale

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

Planifier la migration des applications d entreprise dans le nuage

Le partenaire de votre innovation technologique

Élasticité des applications à base de services dans le Cloud

GL Le Génie Logiciel

2. Activités et Modèles de développement en Génie Logiciel

TP N 57. Déploiement et renouvellement d une constellation de satellites

Cours Fonctions de deux variables

LA DISPONIBILITÉ DE VOS SYSTÈMES D INFORMATION

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Investissements d Avenir. Développement de l Economie Numérique

Enquête 2014 de rémunération globale sur les emplois en TIC

Architectures informatiques dans les nuages

1- Principe général : 2- Architecture réseau pour ToIP : 3 Bilan. Qu est-ce que la VoIP/ToIP? IPBX/Protocoles utilisés

La nouvelle planification de l échantillonnage

DAns un système multi-utilisateurs à temps partagé, plusieurs processus

ECTS INFORMATIQUE ET RESEAUX POUR L INDUSTRIE ET LES SERVICES TECHNIQUES

La conformité et la sécurité des opérations financières

MÉTHODOLOGIE DE L ASSESSMENT CENTRE L INSTRUMENT LE PLUS ADÉQUAT POUR : DES SÉLECTIONS DE QUALITÉ DES CONSEILS DE DÉVELOPPEMENT FONDÉS

Annexe : La Programmation Informatique

Maîtriser les mutations

Diagrammes de Package, de déploiement et de composants UML

Concepteur Développeur Informatique

Modélisation des interfaces matériel/logiciel

Architecture d'entreprise : Guide Pratique de l'architecture Logique

La Certification de la Sécurité des Automatismes de METEOR

Pourquoi l apprentissage?

ITIL Gestion de la capacité

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris Mars 2003

Jedox rafraîchit les rapports du fabricant de boissons MBG

Analyse des trajectoires acceptables en approche de virage assistance aux conducteurs

CLAIRE, UN OUTIL DE SIMULATION ET DE TEST DE LOGICIELS CRITIQUES. Jean GASSINO, Jean-Yves HENRY. Rapport IPSN/Département d'évaluation de sûreté N 280

Pilotage de la Supply Chain

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

M Études et développement informatique

Temps Réel. Jérôme Pouiller Septembre 2011

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

PPE Contexte de travail GSB Activité Reconditionnement et Helpdesk

S84-1 LA GRC ET LE SI (Système d Information) Qualification des données clientèle La segmentation de la clientèle

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

Management des Systèmes d Information

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

BONJOURGRID : VERSION ORIENTÉE DONNÉE & MAPREDUCE SÉCURISÉ

Le cycle de traitement de la situation 1/2

Transcription:

Introduction aux Systèmes Temps Réel Nicolas NAVET 2010/2011 http://www.loria.fr/~nnavet Introduction aux systèmes temps réel

Plan du cours 1. Systèmes temps réel : exemples et fondamentaux 2. Conception des applications temps réel : quelles techniques pour vérier le respect des contraintes? 3. Ordonnancement : choix de la bonne séquence d'exécution des activités du système.. Introduction aux systèmes temps réel 1

Systèmes temps réel : introduction Systèmes temps réel : correction logique et temporelle des résultats Contraintes temporelles sont issues de la dynamique du processus contrôlé Le plus souvent, les systèmes temps réel sont dire, physiquement liés au processus contrôlé embarqués, c'est à Ordonnancer c'est déterminer un ordre sur les activités d'un système Introduction aux systèmes temps réel 2

Systèmes embarqués temps réel : exemples Impact dans la société : le marché des systèmes embarqués architectures clients / serveurs + PC Chaque jour, on utilise environ 80 processeurs de manière transparente Introduction aux systèmes temps réel 3

X-by-Wire dans l'automobile Introduction aux systèmes temps réel 4

Typologie des contraintes de temps Contrainte de date au plus tard sur la n d'exécution (ou contrainte d'échéance - deadline) Contrainte de type (m, k) rm : respecter au moins m échéances toutes les k activations Contrainte de précédence entre tâches Minimisation de la gigue sur les ns d'exécution des tâches Maximisation de la fraîcheur des données d'entrée d'un algorithme Maximisation de la cohérence temporelle des données d'entrée d'un algorithme On parle de contraintes de temps : strictes (hard real-time) : non-respect catastrophique souples (soft real-time) : non-respect occasionnel sans conséquence de type best eort : on fait pour le mieux.. Ordonnancement est faisable ssi toutes les contraintes sont respectées Introduction aux systèmes temps réel 5

Contraintes de bout-en-bout : un exemple changement de vitesse τ G τ p_msg r p_msg BV τ L t τ α τ t réseau τ P t τ e δ propa τ p_rep r p_rep CM t R Ι R Ψ τ reaction ressource (CPU ou réseau) utilisée couple moteur effectivement réduit Figure 1: Décomposition d'une contrainte de temps entre un changement de vitesse et la réduction du couple moteur associée Introduction aux systèmes temps réel 6

Conception d'un système temps réel Cahier des Charges (fonctionnalités et contraintes) Architecture Fonctionnelle Architecture Matérielle Architecture Logicielle Placement et Configuration Remise en cause de choix de conception Architecture Opérationnelle Evaluation de Performances Modèles analytiques Modèles de simulation Prototypes, maquettes Approches hybrides non Contraintes respectées? oui Architecture Validée Dans les systèmes temps réel, la vérication du respect des contraintes (=validation du système) est cruciale... Introduction aux systèmes temps réel 7

Observation sur prototypes : Techniques de validation (1/2) + pas d'hypothèse simplicatrice + certaines contraintes ne peuvent être vériées que sur prototype - construction, instrumentation longues et coûteuses - résultats pire-cas sans validité - intervient tard dans le cycle de vie Modèles analytiques : + bien adaptés aux contraintes pire-cas et aux événements rares + validité du modèle vériable - hypothèses simplicatrices fortes - dicultés de modélisation! Introduction aux systèmes temps réel 8

Techniques de validation (2/2) Modèles de simulation : + moins d'hypothèses simplicatrices que les modèles analytiques + facilité de modélisation - résultats orientés pire-cas ou événements rares généralement sans validité - validité des modèles Techniques hybrides : couplage de modèles analytiques et de simulation - ex : prol de communication où les couches basses sont modélisées de façon analytique et les couches hautes sont simulées co-simulation hardware / software - ex : on simule l'activation des tâches et on exécute les tâches sur un processeur réel Introduction aux systèmes temps réel 9

Classes d'ordonnancement hors-ligne : séquence des exécutions est décidée à la conception puis déroulée pendant l'exécution en-ligne : choix d'ordonnancement sont faits en-ligne, ils utilisent certaines caractéristiques des tâches préemptif (resp. non-préemptif) : une tâche peut être interrompue par une autre + prioritaire non-oisif (resp. oisif) : le processeur est nécessairement utilisé si il y a du travail en attente d'exécution déterministe : le hasard n'intervient pas dans les choix d'ordonnancement Une politique d'ordonnancement est un algorithme qui détermine en-ligne l'activité à exécuter - propriétés requises : décidabilité et implémentabilité Une politique est optimale si elle conduit à un ordonnancement faisable si il en existe un Introduction aux systèmes temps réel 10

Modèles de tâches Les tâches sont apériodiques (une seule activation - on parle de jobs) ou, le plus souvent en temps réel, récurrentes Caractéristiques de tâches récurrentes : τ k,n est la n ième instance de la tâche τ k avec A k,n sa date d'arrivée : 0 A k,1,... A k,n 1 A k,n. T k,n def = A k,n+1 A k,n est le temps interarrivée. Pour une tâche périodique T k,n = T k n N. D k,n son échéance, l'échéance relativement à A k,n est D k,n, on a D k,n def = A k,n + D k,n, C k,n son temps d'exécution sur la machine cible - en pratique dicile à évaluer! Modèles d'activation : périodique, sporadique (il existe un temps minimum entre 2 activations de tâches) ou plus complexes : tâches multi-périodiques, tâches à temps d'exécution alternés, tâches MPEG etc... Introduction aux systèmes temps réel 11

Le paradoxe du lièvre et de la tortue Le processeur 1 (lièvre) sous FIFO est 10x plus rapide que le processeur 2 sous EDF (tortue) Job A (C tortue = 200, D = 220, A = 0) - Job B (C tortue = 10, D = 15, A = 2) Ordonnancement sur les processeurs Tortue et Lièvre (G. Le Lann) Nécessité de faire les bons choix d'ordonnancement... une analyse d'ordonnançabilité permet d'étudier la faisabilité du système Introduction aux systèmes temps réel 12

Analyse d'ordonnançabilité par simulation Principe : simuler le déroulement de l'ordonnancement du système pendant une période du système et vérier que toutes les instances de tâches respectent leur échéance. Avantages : permet de traiter des politiques d'ordonnancement ou des modèles de tâches qui seraient diciles à analyser mathématiquement, requiert peu de connaissances en ordonnancement pour être mise en oeuvre. Inconvénients : non utilisable pour des ensembles de tâches quelconques car la période du système est au minimum un PPCM des périodes des tâches, comme pour tout modèle de simulation se pose la question de la validité / correction du modèle... Introduction aux systèmes temps réel 13

Analyse d'ordonnançabilité par test de faisabilité Principe : appliquer une formule (close) qui en fonction des caractéristiques des C tâches décide de la faisabilité. Ex : faisabilité sous EDF ssi i 1 avec T i la période et C i le temps d'exécution de la tâche τ i. Avantages : simplicité de mise en oeuvre, en général le calcul a une complexité faible : souvent le test est basé uniquement sur la charge du système. Inconvénients : n'existe pas pour toutes les politiques, ne couvre pas tous les modèles de tâches : généralement tâches périodiques avec D k = T k, il ne s'agit souvent que de conditions susantes et non de conditions susantes et nécessaires, en cas de non-faisabilité, ne donne pas d'indication sur les tâches qui posent problèmes. T i Introduction aux systèmes temps réel 14

Analyse d'ordonnançabilité par calcul de bornes sur les temps de réponse Principe : appliquer une formule de récurrence qui calcule itérativement les dates de n d'exécution sur un morceau de trajectoire. Le morceau de trajectoire a été construit/choisi de façon à contenir les plus grands temps de réponse que la tâche considérée pourra recontrer. Avantages : le calcul de bornes sur les temps de réponse est possible pour la quasi totalité des politiques ayant un intérêt dans le temps réel, des modèles de tâches complexes peuvent être pris en compte, en cas de non-faisabilité, des informations sont disponibles sur les tâches qui posent problème. Inconvénients : calculs parfois complexes algorithmiquement. Introduction aux systèmes temps réel 15

Ordonnancement : la politique Earliest Deadline First (EDF) Principe : plus petite l échéance, plus grande la priorité Propriétés : optimalité vis-à-vis de la contrainte d échéance pour l ordonnancement mono-processeur préemptif Exercice : décider de la faisabilité des deux tâches périodiques τ 1 (C 1 = 2, T 1 = 5, D 1 = 5, A 1,1 = 0) et τ 2 (C 2 = 4, T 2 = 7, D 2 = 7, A 2,1 = 0) sous la politique EDF. τ 1 τ 2 0 10 20 30 40 50 Introduction aux systèmes temps réel, ENSEM 16

Ordonnancement : autres politiques de base Fixed-Priority Preemptive (FPP) : toutes les instances d une tâche possèdent la même priorité ( EDF). Allocation des priorités : Rate-Monotic (+petite la période, +grande la prio), Deadline Monotonic ou selon l importance de la tâche. Round-Robin : chaque tâche possède le CPU pendant un quantum de temps puis la tâche suivante prend la main τ 7,n τ 1,n τ 6,n Ψ k,n τ2,n τ 5,n τ 3,n τ 4,n Moins utilisées : Shortest Remaining Time First (optimale vis-à-vis du temps de réponse moyen), First-In First-Out (FIFO), Last-In First-Out (LIFO),... Introduction aux systèmes temps réel, ENSEM 17

Perspectives L'informatique embarquée temps réel prend une place de + en + importante dans notre société De plus en plus de systèmes sont critiques du point de vue sécurité d'où l'importance de la validation... Sous des hypothèses de fonctionnement déterministe du système (pas d'erreurs de transmission, pas d'erreurs logicielles, temps d'exécution connu,...), on sait vérier la faisabilité d'un système temps réel En pratique, des aléas peuvent survenir.. les approches de conception s'orientent vers validation probabiliste des contraintes (ex : distribution des temps de réponse) intégrer les problématiques de sûreté de fonctionnement (ex : abilité, disponibilité,... ) avec pour objectif de se situer sous un certain seuil de risque jugé acceptable (ex : 10 9 défaillance grave par heure de fonctionnement pour l'avionique) Introduction aux systèmes temps réel 19