Systèmes Temps Réel - Chapitre 1

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Parmi les caractéristiques suivantes, lesquelles sont essentielles pour un système temps réel ?

  • La possibilité d'exécuter des tâches en parallèle
  • L'accès à une grande quantité de mémoire
  • L'utilisation de langages de programmation avancés
  • La possibilité de mettre à jour le système à distance
  • La capacité à répondre aux événements dans un temps prédit (correct)

Le modèle à boucle infinie peut être utilisé pour les systèmes embarqués à base de microcontrôleurs.

True (A)

Les systèmes temps réel sont toujours non-déterministes.

False (B)

Quels sont les domaines d'application des systèmes temps réel ?

<p>L'automobile (A), Les systèmes de surveillance (B), La téléphonie mobile (C), La robotique (D), L'informatique industrielle (E)</p> Signup and view all the answers

Associez les types de systèmes temps réel à leurs caractéristiques.

<p>STR mou ou lâche = La réponse du système est acceptable même si elle arrive en retard. STR strict ou dur = La réponse du système dans les délais est vitale. L'absence de réponse est catastrophique. STR ferme = Une certaine tolérance aux erreurs temporelles est autorisée. STR multi-critique = Le système est composé de sous-systèmes ayant des niveaux de criticité différents.</p> Signup and view all the answers

Quelles sont les trois composantes principales du développement d'un système embarqué temps réel ?

<p>Electronique, Automatique, Informatique</p> Signup and view all the answers

Que sont les primitives du noyau temps réel ?

<p>Ce sont des fonctions du noyau temps réel qui permettent d'activer des tâches et de gérer les ressources.</p> Signup and view all the answers

Quel est l'avantage principal d'un système d'exploitation temps réel par rapport à un noyau classique ?

<p>Un ordonnancement plus efficace des tâches (D)</p> Signup and view all the answers

Un système d'exploitation temps réel peut être composé d'un noyau et d'un exécutif.

<p>True (A)</p> Signup and view all the answers

Quel est le nom d'un système d'exploitation temps réel libre et populaire ?

<p>FreeRTOS</p> Signup and view all the answers

Quels sont les deux types d'ordonnancement des tâches ?

<p>Préemptif et non-préemptif (A), Hors-ligne et en ligne (D)</p> Signup and view all the answers

Quelle est la différence entre un ordonnancement préemptif et non-préemptif ?

<p>Dans un ordonnancement préemptif, une tâche peut être interrompue par une autre tâche ayant une priorité plus élevée. Dans un ordonnancement non-préemptif, la tâche en cours s'exécute jusqu'à ce qu'elle cède la main.</p> Signup and view all the answers

Flashcards

Système embarqué

Un système informatique dont les moyens de calcul sont intégrés au procédé contrôlé.

Système d'exploitation temps réel (RTOS)

Un système informatique dédié aux applications temps réel, permettant de gérer les tâches et de respecter les échéances.

Temps réel

Le fonctionnement d'un système temps réel dépend non seulement du résultat, mais aussi du moment où ce résultat est obtenu.

Système temps réel dur

Un système temps réel où le non-respect des échéances est catastrophique.

Signup and view all the flashcards

Système temps réel mou

Un système temps réel où le non-respect des échéances affecte la performance du système, mais n'est pas catastrophique.

Signup and view all the flashcards

Système temps réel ferme

Un système temps réel où le non-respect des échéances est autorisé dans une certaine limite.

Signup and view all the flashcards

Système temps réel multi-critique

Un système temps réel composé de sous-systèmes avec différents niveaux de criticité.

Signup and view all the flashcards

Déterminisme

La capacité d'un system à produire une réponse fiable et prévisible face à des événements.

Signup and view all the flashcards

Fiabilité

La capacité d'un système à fonctionner correctement même en cas de pannes ou d'erreurs.

Signup and view all the flashcards

Sureté de fonctionnement

La capacité d'un système à garantir un comportement fiable même en cas de défaillances.

Signup and view all the flashcards

Tâche

Une unité active d'un système temps réel, qui exécute une partie du code du système.

Signup and view all the flashcards

Primitive

Un module du noyau temps réel qui gère l'exécution des tâches et la gestion des ressources.

Signup and view all the flashcards

Ordonnancement

L'algorithme qui décide quelle tâche doit s'exécuter à chaque moment.

Signup and view all the flashcards

Ordonnancement préemptif

L'ordonnancement qui permet à une tâche d'interrompre une autre tâche en cours d'exécution.

Signup and view all the flashcards

Ordonnancement non préemptif

L'ordonnancement qui ne permet pas à une tâche d'interrompre une autre tâche en cours d'exécution.

Signup and view all the flashcards

Noyau temps réel

Un système d'exploitation optimisé pour les systèmes embarqués avec des ressources limitées.

Signup and view all the flashcards

Exécutif temps réel

Une couche logicielle qui ajoute des fonctionnalités au noyau temps réel, comme la gestion des E/S.

Signup and view all the flashcards

Système d'exploitation temps réel

Un système d'exploitation complet qui comprend un exécutif temps réel et des outils de gestion.

Signup and view all the flashcards

RTOS libre

Un système d'exploitation temps réel open source utilisant des composants logiciels libres.

Signup and view all the flashcards

RTOS dédié

Un système d'exploitation temps réel conçu spécifiquement pour une plateforme ou un type d'application.

Signup and view all the flashcards

Ordonnancement hors ligne

Un système où la séquence d'exécution des tâches est déterminée avant l'exécution.

Signup and view all the flashcards

Ordonnancement en ligne

Un système où les décisions d'ordonnancement sont prises pendant l'exécution.

Signup and view all the flashcards

Ordonnancement prioritaire

Un système où les décisions d'ordonnancement se basent sur la priorité des tâches.

Signup and view all the flashcards

Ordonnancement à échéance

Un système où les décisions d'ordonnancement se basent sur le délai restant avant l'échéance.

Signup and view all the flashcards

Ordonnancement à durée fixe

Un système où les décisions d'ordonnancement se basent sur la durée des tâches.

Signup and view all the flashcards

Ordonnancement par ressources

Un système où les décisions d'ordonnancement se basent sur le nombre de ressources utilisées.

Signup and view all the flashcards

Temps de latence

Le temps maximal que le système peut prendre pour répondre à un événement.

Signup and view all the flashcards

Temps de réponse

Le temps minimal que le système peut prendre pour répondre à un événement.

Signup and view all the flashcards

Temps d'exécution

Le temps maximum que le système peut prendre pour exécuter une tâche.

Signup and view all the flashcards

Study Notes

Cours Systèmes Temps Réel - Chapitre 1

  • Le cours porte sur l'introduction aux Systèmes Temps Réel (STR).
  • Le conférencier est Mariem TURKI.
  • Le cours est pour LISI3, année universitaire 2024/2025.

Plan du Cours

  • Introduction aux STR
  • Domaines d'application des STR
  • Contraintes de temps des STR
  • Développement d'applications temps réel
  • Conclusion

Introduction

  • Un système embarqué est un système informatique dont les moyens de calcul sont intégrés au procédé qu'il contrôle.
  • Les contraintes des systèmes embarqués incluent:
    • L'encombrement (poids, taille, forme)
    • Ressources limitées
    • Consommation d'énergie (embarquée ou ambiante)
    • Coût

Introduction (suite)

  • Généralement, il existe deux modèles de programmation pour les systèmes embarqués :
    • Modèle à boucle infinie (Foreground/Background, Super-loops)
    • Modèle basé sur un système d'exploitation (RTOS)

Introduction (suite) - Modèle à boucle infinie

  • Ce modèle est utilisé principalement pour les petits systèmes embarqués à base de microcontrôleurs.
  • Il comprend une boucle infinie principale qui exécute des instructions séquentielles et appelle des fonctions.
  • Le traitement est basé sur des interruptions de service (ISR) déclenchées par des événements matériels.
  • Le temps de réponse dépend du temps d'exécution requis par toutes les tâches de la boucle, le rendant potentiellement non déterministe.

Programmation avec RTOS

  • Les systèmes embarqués utilisent souvent les RTOS pour une meilleure gestion des applications.
  • Cette approche utilise des couches d'abstraction par dessus le matériel.

La notion de « temps réel »

  • Un système est temps réel si l'exactitude d'une application dépend non seulement du résultat correct, mais aussi du moment où ce résultat est produit.
  • Cela comprend:
    • Exactitude logique : sorties appropriées par rapport aux entrées.
    • Exactitude temporelle : les sorties au bon moment selon les contraintes temporelles précisées.

La notion de « temps réel » (suite)

  • L'échelle de temps varie selon les applications. Cela peut aller de la microseconde (radar) à des mois et années (système de navigation spatiale).

Contraintes temporelles

  • La satisfaction de la notion de temps réel requiert le respect des échéances (délais) spécifiques à chaque application.
  • Les systèmes temps réel sont catégorisés en fonction de leur tolérance aux échéances:
    • Mou/Lâche
    • Strict/Dur
    • Ferme
    • Multi-critique

Contraintes temporelles - Temps réel strict/dur (Hard Real Time)

  • La réponse du système dans le délai est critique, l'absence de réponse est catastrophique.
  • Exemples: fonctions critiques dans l'aéronautique, l'automobile, le transport ferroviaire, et les véhicules spatiaux.

Contraintes temporelles - Temps réel ferme (Firm Real Time)

  • La réponse du système est essentielle mais des erreurs ponctuelles dans le respect des délais sont tolérées dans une certaine limite.
  • Exemples : décodage vidéo, téléphonie.

Contraintes temporelles - Temps réel relatif/mou (Soft Real Time)

  • La réponse après le délai est d'importance, mais pas catastrophique. L'importance de la performance est dégradée si les délais sont manqués.
  • Exemples: distributeurs automatiques de billets, jeux vidéo.

Contraintes temporelles - Temps réel multi-critiques

  • Les sous-systèmes ont des degrés de criticité variables.
  • Exemples: contrôle aérien.

Domaines d'application des STR

  • Les STR sont présents dans différents systèmes de transport, la robotique de production, les systèmes d'acquisition/surveillance, la domotique, la téléphonie mobile et les objets connectés.

Caractéristiques d'un STR

  • Déterminisme : la réponse est connue à l'avance et constante pour les mêmes entrées.
  • Prévisibilité : les performances sont définies à l'avance pour respecter les contraintes de temps.
  • Fiabilité : capacité du système à exécuter ses fonctions correctement dans des conditions normales d’utilisation et respecter les contraintes temporelles.
  • Sécurité de fonctionnement : même les experts peuvent faire des erreurs.

Domaines mis en jeu

  • Développement STR : Electronique (processeurs dédiés, FPGA), Automatique (régulation, lois de commande) et Informatique (langages de programmation, systèmes d'exploitation).

Architecture d'un système temps réel

  • Couches: Application temps réel, Exécutif temps réel (Ordonnanceur, Gestion des Ressources, primitives de communication) et Matériel.

Systèmes d'exploitation temps réel (OS Temps Réel)

  • OS de petite taille conçu pour les applications de contrôle-commande.
  • Déterminisme : Exécution avec des contraintes temporelles.
  • Les principales fonctions d'un noyau temps réel:
    • Gestion des E/S (entrées/sorties)
    • Ordonnancement des tâches
    • Relations entre les tâches

Systèmes d'exploitation temps réel (suite)

  • Les tâches sont les unités actives du système. Le noyau est actif seulement quand requis.
  • L'algorithme d'ordonnancement détermine l'activation et gestion des tâches.
  • Les priorités des tâches et l'utilisation des ressources sont considérées.
  • Le démarrage des modules correspondants suit la décision d'activation.
  • La tâche occupe le processeur jusqu'à la fin de son exécution.

Noyaux temps réel vs Noyaux classiques

  • Efficacité, respect des délais, prédictibilité sont les avantages des noyaux temps réel comparés aux noyaux classiques.

RTOS (Real-Time Operating System)

  • Les noyaux temps réel gèrent les tâches, les communications, et la mémoire.
  • Les exécutifs temps réel sont des sur-couches qui offrent des services plus sophistiqués sur la base du noyau, comme la gestion du réseau, des fichiers etc.
  • Un système d'exploitation temps réel est une implémentation complète d'un exécutif temps réel avec moyens de communication avec l'utilisateur (interface graphique ou commande).

Marché des RTOS

  • Exemples d’exécutifs temps réel: VxWorks, QNX, LynxOS, Chorus, Nucleus RTOS, Windows CE.
  • Exemples d’exécutifs libres: MicroC/OS-II, FreeRTOS, RTEMS.
  • Exemples d’exécutifs dédiés: TinyOS, NXC.
  • Des systèmes d’exploitation comme Linux peuvent être adaptatés/modifiés pour le temps réel.

Ordonnancement dans les Systèmes Temps Réel

  • Hors-ligne : un ordonnancement déterministe effectué avant l’exécution (séquence).
  • En-ligne : les décisions d'ordonnancement sont prises pendant l’exécution avec des algorithmes préemptifs ou non-préemptifs.

Ordonnancement préemptif/Non préemptif

  • Non-préemptif : la tâche courante continue d’exécuter jusqu'à ce qu’elle cede la main.
  • Préemptif : le système peut interrompre la tâche en cours pour un réordonnancement.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

cours_STR_chapitre1.pdf

More Like This

Introduction to Embedded Systems
10 questions
Types of Real-time Embedded Systems
29 questions

Types of Real-time Embedded Systems

BetterThanExpectedByzantineArt avatar
BetterThanExpectedByzantineArt
Embedded Systems Quiz
8 questions
Use Quizgecko on...
Browser
Browser