Ecole Supérieure de Année Universitaire
Technologie et d'Informatique 2005 / 2006
EXAMEN
Session rattrapage
|
Matière : Systèmes temps réels Enseignant : A. Dhaoui Filière : Génie Electrique Section : 4AGE |
Date : 24 Juin 2006 Durée :2h Documents: Non autorisés Barème: 4 / 6 / 10 |
EXERCICE 1
1) Indiquer comment s'exécute les tâches Tl, T2, T3 sous A6rmtr dans les cas suivants : L'ordre de création des tâches dans la tâche principale est : tache 1 , tâche2 et tâche 3. Nous considérons dans cet exemple que toutes les tâches sont prêtes.
1-1 ) Politique d'ordonnancement choisie est la tranche du temps Crime Slicing)
a) Priorité de Tl PI =50 ; Priorité de T2 P2 =60 ; Priorité de T3 P3 =50 .
b) Priorité de Tl Pl =45 ; Priorité de T2 P2 =60 ; Priorité de T3 P3 =50 .
1-2) Politique d'ordonnancement choisie est la priorité (No_Time Slicing)
a) Priorité de Tl P1 =50 ; Priorité de T2 P2 =60 ; Priorité de T3 P3 =50 .
b) Priorité de Tl Pl =45 ; Priorité de T2 P2 =60 ; Priorité de T3 P3 =50 .
2) Quel est le mécanisme sous A6RMTR permettant la gestion de l'accès à une imprimante par plusieurs tâches dans une application
EXERCICE 2
Dans une application, deux tâches communiquent de manière asynchrone comme suit :
La tâche N°1 envoi à la tâche N°2 une valeur réelle égale à 13.5 et un message : "hauteur en cm du paquet ". La deuxième tâche accuse réception du message en envoyant à son tour à la première tâche le message suivant : " la hauteur du paquet est de 13.5 ". La valeur réelle sera affectée à une variable locale de la deuxième tâche.
1) Quel est le mécanisme sous A6rmtr que vous utiliser pour réaliser cette communication.
2) Donner le gode de la structure permettant l'écriture de chaque message.
3) Ecrire le code des tâches 1 et 2 de cette application.
Problème :
Un système de mesure de la température et de l'humidité (T/H) ambiante est composé des éléments représentés par la figure I:
- Un capteur permet la mesure de T/H dans une gamme de -20° C à +80°C et 10% à 100%. - Un conditionneur permet de filtrer, de linéariser, d'amplifier les données mesurées.
- Une carte périphérique PC permet de convertir ces mesures en une donnée numérique sur 8 bits.
Nous souhaitons effectuer une collecte de ces données toutes les 50 ms par cycle de 20 mesures. A la fin de chaque cycle un test permet d'éliminer les données aberrantes telles qu'une température supérieure à 80 ou inférieure à - 20°. Le stockage, sur disque dur , de ces données a lieu tous les 10 cycles de mesure. Les mesures effectuées sont visualisées sur un écran durant la durée de la manipulation. A la fin de celle-ci un historique des mesures est
Obtenue sous forme d'un listing ainsi que les paramètres de la manipulation (durée, Tmax Amin et Hmax /Hmin, nb de mesure par cycle, nb de cycle pour sauvegarder les mesures etc..). Un opérateur fixe ces paramètres pour chaque manipulation.
I) Donnez les tâches de cette application. Précisez les paramètres de chaque tâche (priorité, pile, enveloppe etc..). Justifier vos choix.
2) Faite l'inventaire des communications et synchronisations entre les tâches et proposer les mécanismes sous A6rmtr permettant leur réalisation.
3) Proposez un programme sous A6RMTR pour la gestion de cette application. Préciser le contenu du fichier de définition de votre application.
Donner le code des tâches de votre application.
Remarque :
L'interruption de période 50 ms sera simulée par une tâche envoyant un message " début " après une temporisation de 10 périodes de l'horloge temps- réel.
|
|
|
|
|
|
|
|
|
|
PC+ NTR +carte CAN |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
conditionneur |
|
|
|
capteur |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
figure 1: Système d'acquisition de données Ci - joint vous avez quelques primitives du noyau A6RMTR.