Introduction aux systèmes Temps Réel M1 UEF5 Systèmes embarqués 20052006 Plan
Introduction aux systèmes Temps Réel M1 UEF5 Systèmes embarqués 20052006 Plan : I. Introduction II. Mécanismes Fondamentaux III. Maîtrise du temps IV. Temps réel et industrie I. Introduction 1. Qu'est ce que le temps réel ? 2. Propriétés 3. Exemples d'applications 4. Limite des systèmes classiques pour le temps réel I.1 Qu'estce que le temps réel ? ● Types de systèmes informatiques : ●Systèmes transformationnels (calcul scientifique, gestion de BD) les données sont disponibles au lancement les instants de productions des résultats ne sont pas contraints ●Systèmes interactifs (systèmes transactionnels ou outils bureautiques) les résultats dépendent de données produites par l'environnement les instants de production respectent des valeurs statistiques (souvent peu contraints) I.1 Qu'estce que le temps réel ? ● Types de systèmes informatiques : ●Systèmes temps réel ou systèmes réactifs: Systèmes embarqués Systèmes où l'intervention humaine est limitée (voire absente) Résultats entièrement conditionnés par l'environnement connecté Les instants de production dépendent de la dynamique du procédé (environnement + traitement) Les instants de production sont fortement contraints (survie du système) I.1 Qu'estce que le temps réel ? ●Validité d'un programme TR Outre la correction algorithmique le temps intervient dans la validité du programme: le temps de réaction doit être adapté aux événements externes (crucial pour les systèmes embarqués) Le programme doit pouvoir fonctionner en continu en maintenant sa capacité à traiter le flux de données d'entrée les temps de calculs sont connus (estimés) et peuvent être utilisés dans une analyse de réactivité Valider un système temps réel c'est démontrer rigoureusement que le système a le comportement spécifié I.1 Qu'estce que le temps réel ? Définition (1): Le comportement d'un système informatique est qualifié de « temps réel » lorsqu'il est assujetti à l'évolution d'un procédé qui lui est connecté et qu'il doit piloter ou suivre en réagissant à tous ses changements d'états . Groupe CNRS sur la problématique temps réel 1988 I.1 Qu'estce que le temps réel ? Définition (2): Un système temps réel est défini comme un système dont le comportement dépend : De l'exactitude des traitements effectuées Du temps où les résultats sont produits Un retard = le fait de rater une échéance = erreur du système. Exemple : tâche périodique Exemple : tâche périodique Exemple : tâche périodique Exemple : tâche périodique ●Temps réel dur et lâche : – Si le retard d' un traitement = exception (traitement spécifique en cas d'erreur) : on parle d'échéance dure, et il s'agit d'une défaillance – Si le retard ne provoque pas d'exception: échéance lâche – Un système dont aucune échéance ne doit être dépassée: Temps réel dur (hard real time) – Si un dépassement occasionnel ne met pas en danger le système : temps réel lâche, ou mou (soft real time) ●Temps réel critique : – Terminologie qui met l'accent sur les conséquences d'une défaillance du système et concerne la sûreté de fonctionnement – Le système est critique si : ●Il y a des conséquences humaines en cas de défaillance (contrôle aérien, centrales nucléaires, etc...) ●Le coût financier d'une défaillance du système est d'ordre supérieur à celui du système. (exploration spatiale, etc...) ●Système et environnement : – Système : ensemble d' « activités » correspondant à un où plusieurs traitements effectués en séquence ou en concurrence. Les traitements communiquent éventuellement entre eux. – Le système est en interaction avec son environnement – Modélisation simple : [1n] processeurs + périphériques (capteurs , actionneurs) – Les capteurs : ●collecte des signaux (évènements) émis par l'environnement ●Prélèvement de l'état fugitif de l'environnement (mesures) – Les actionneurs effectuent les réactions du système ●Système et environnement : – Interaction système environnement : ●A des moments déterminés par une référence de temps interne au système : système pilotés par le temps (time driven system) , programmée pour exécuter les actions/lectures à intervalles réguliers fixés par un timer (fonctionnement séquentiel) = systèmes synchrones ●A des moments déterminés par l'environnement luimême: il attend les sollicitations et réagit à cellesci: système piloté par les évènements (event driven system) = systèmes asynchrones ●Un système temps réel est composé d'un système contrôlé et d'un système contrôleur I.2 Propriétés Prévisibilité Déterminisme Fiablité ●Prévisibilité – Conception afin que les performances soient définies dans le pire des cas – Permet de déterminer à l'avance si un système va respecter ses contraintes temporelles – Nécessite un bonne connaissance des paramètres liés aux calculs des activités = déterminisme ●Déterminisme – Enlever toute incertitude (= conserver la prévisibilité) ●Sur le comportement des activités individuelles ●Sur le comportement des activités groupées dans le contexte d'exécution (+ordonnancement) – Sources de nondéterminisme : ●Charge de calculs (variations des durées d'exécution des activités) ●Entréessorties (temps de réaction, durée des communications) ●Interruptions (temps de réaction du système) ●Fautes et exceptions matérielles ou logicielles = Fiabilité ●Fiabilité – Intervention humaine directe difficile (syst temps réel embarqués) – Conception tolérante aux fautes, pour garantir le comportement du système et de ses composants (prévisibilité => déterminisme => fiabilité) – Temps de réaction cruciaux : conception de système dédiés ●Compromis hardware/software – Capacités, propriétés natives (rapidité), fiabilité du hardware ●Mémoire, cpu, com – Poids des différents traitements pour mener à bien une tâche donnée ●Algo, complexité – Gestion du hardware pour permettre l'execution des traitements (noyau temps réel) ●ordonnancement, gestion de la mémoire, préemption, etc... I.3 Exemples ●Logiciel de contrôle d'un Combiné GSM: – Embarqué – Gestion des opérations de la couche physique ●Émission, réception, mesure des niveaux de réception, etc... – Gestion des procédures logiques ●Localisation, mesures de qualité du lien radio, – Gestion de la conversation ●Relais entre deux reseaux – IHM ●Redaction, navigation, etc... ●Système de Video conférence sur réseau local – Numérisation du signal video ●Séquence de 30 images/s ●Compression – Reseau ●Accès, envoi, réception ●Robot Autonome – Robot type mars explorer: – Aller du point A au point B sans être bloqué ●Navigation ● évitement d'obstacle – Contrainte importantes car il en découle la « survie » de la mission : le robot ne doit pas rester bloqué – échantillonnage des capteurs de proximité – Vitesse de déplacement – Architecture de subsomption pour ordonnancer navigation et évitement d'obstacles I.3 Limites des systèmes classiques: ●Ordonnancement: temps partagé ●Gestion des entrées sorties et des interruptions sous optimales ●Gestion de la mémoire virtuelle très souple : engendre des fluctuations des temps d'exécution des activités d'un système ●Résolution temporelle pas assez fine Plan : I. Introduction II. Mécanismes Fondamentaux III. Maîtrise du temps IV. Systèmes Temps Réel II. Mécanismes Fondamentaux ●Idée générale : revoir les mécanismes fondamentaux d'un OS classique pour comprendre les origines de la latence d'un système. ●Latence : – Délai global de bout en bout entre le changement d'état dans un environnent et la réaction correspondante en sortie du système II. Mécanismes Fondamentaux ●Il s'agit d'un délai composite qui comprend : – Les délais de scrutation du système – Les délais dus à l'os – Les délais du calcul applicatif – Les délais de transmission du message II. Mécanismes Fondamentaux ●Il s'agit d'un délai composite qui comprend : – Les délais de scrutation du système – Les délais dus à l'os – Les délais du calcul applicatif – Les délais de transmission du message II. Mécanismes Fondamentaux ●Il s'agit d'un délai composite qui comprend : – Les délais de scrutation du système – Les délais dus à l'os – Les délais du calcul applicatif – Les délais de transmission du message ●Gigue sur la latence : – Décrit l'incertitude sur la latence – Problèmes d'accès aux ressources – ordonnancement II. Mécanismes Fondamentaux ●Exemple (1) : système élémentaire ●Soit un système simple qui exécute un programme unique : – Acquisition des données – Traitement (calcul) – Restitution des résultats II. Mécanismes Fondamentaux ●Exemple (1) : système élémentaire II. Mécanismes Fondamentaux ●Exemple (1) : phase 1 II. Mécanismes Fondamentaux ●Exemple (1) : phase 2 II. Mécanismes Fondamentaux ●Exemple (1) : phase 3 II. Mécanismes Fondamentaux ●Exemple (1) : système élémentaire – Traitement séquentiel suffisant – Séquencement réglé par l'horloge – Pas de concurrence entre les phases – OS simple – Seule la dimension des ressources matérielles/logicielles est à prendre en compte (faire face au pire des cas: simple) II. Mécanismes Fondamentaux ●Exemple (2) : système plus complexe : – Un évènement survient à n'importe quel moment : instant d'apparition non maîtrisé (traitement déjà en cours, ...) – Il doit être pris en compte dans un délais maximum donné II. Mécanismes Fondamentaux ●Exemple (2) : système plus complexe : – Un évènement survient à n'importe quel moment : instant d'apparition non maîtrisé (traitement déjà en cours, ...) – Il doit être pris en compte dans un délais maximum donné ●Deux grands modèles d'interaction : – Scrutation cyclique (polling) – Interaction par interruptions II. Mécanismes Fondamentaux ●Scrutation : – Le système prend l'initiative d'activer la fonction qui va lire une entrée à un instant programmé pour vérifier si un évènement a eu lieu. Le plus souvent cette scrutation sera faite périodiquement. II. Mécanismes Fondamentaux ●Scrutation : Boucle infinie : Tant que données non disponibles uploads/Industriel/ coursandry-tr-pdf.pdf
Documents similaires
-
13
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jan 05, 2022
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 1.1751MB