Realtime systems and multitasking Second part - PowerPoint PPT Presentation

1 / 56
About This Presentation
Title:

Realtime systems and multitasking Second part

Description:

La coop ration des t ches dans une application industrielle se traduit par un ... certaines de leurs actions, par des changes de donn es ou par le partage des ... – PowerPoint PPT presentation

Number of Views:163
Avg rating:3.0/5.0
Slides: 57
Provided by: Merc
Category:

less

Transcript and Presenter's Notes

Title: Realtime systems and multitasking Second part


1
Real-time systems and multitaskingSecond part
  • INGE4
  • 2006-2007

2
CM 6 Mastering the time
  • Independent task scheduling
  • Static scheduling
  • Dynamic scheduling
  • Taking into account the aperiodic tasks
  • Dependant task scheduling
  • Tasks with precedence constraints

3
Dependent tasks scheduling
4
Dependent tasks scheduling
  • La coopération des tâches dans une application
    industrielle se traduit par un enchaînement de
    certaines de leurs actions, par des échanges de
    données ou par le partage des mêmes ressources.
  • Dun point de vue opérationnel, les relations de
    dépendances qui peuvent apparaître entre tâches
    de lapplication sont de deux types
  • Contraintes de précédence qui expriment les
    relations de synchronisation et de communication
    entre tâches.
  • Le partage de ressources dont lutilisation nest
    possible quen exclusion mutuelle.
  • Remarque lordonnancement de tâches dépendantes
    est peu efficace en ligne.

5
Prise en compte des contraintes de précédence
  • Principe de la solution de Blazewicz1 et de
    Chetto al2
  • Rendre les tâches indépendantes en fonction de
    leur paramètres (ou se ramener à lordonnancement
    de tâches indépendantes).
  • Technique
  • Ajustement des dates de réveil, des échéances et
    des priorités.
  • Utilisation dun algorithme classique RM, DM ou
    EDF
  • Égalité des priorités ? utilisation du graphe de
    précédence
  • J. Blazewicz.  Scheduling Dependant tasks with
    Different arrival Times to Meet Deadlines . In
    Gelende. H. Beilner (cds), Modeling and
    Performance Evaluation of Computer Systems,
    Amsterdam, Noth-Holland, 1976.
  • H. Chetto, M. Silly, and T. Bouchentouf. Dynamic
    Scheduling of Real Time Systems, The
    International Journal of Time-Critical Computing
    Systems, 2(3) 181-194, September 1990.

6
Contraintes de précédences et   Rate Monotonic 
  • On transforme hors ligne lensemble des tâches
    liées par des contraintes de précédences en un
    ensemble de tâches indépendantes pour lequel le
    test dacceptabilité de Rate Monotonic  est
    valide.
  • Cette transformation sopère sur
  • le paramètre  date de réveil  r
  • laffectation des priorités.
  • riMaxri,rj, Tj ? Ti (La tâche Tj
    précède la tâche Ti).
  • Si Ti?Tj , (Priorité de la tâche Ti) gt (priorité
    de la tâche Tj)
  • Le réveil dune tâche doit être supérieur à
    toutes les dates de réveil de ses prédécesseurs
    immédiats.

7
Exemple de traitement des contraintes de
précédences et RM
  • Soient 5 tâches T1, T2, T3, T4, T5 liées par le
    graphe de précédence suivant

8
Exemple de traitement des contraintes de
précédences et RM
Ti
Tj
  • Rappel riMaxri,rj, Tj ? Ti
  • r1Maxr1,0, Pas de tâche qui précède la tâche
    T1
  • AN r1Max0,0 0
  • r2Maxr2,0, Pas de tâche qui précède la tâche
    T2
  • AN r2Max5,0 5
  • r3Maxr3,r1, La tâche T1 précède la tâche T3
  • AN r3Max0,0 0
  • r4Maxr4,r1,r2, Les tâche T1 et T2 qui
    précède la tâche T3
  • AN r4Max0,0,5 5
  • r5Maxr5, r3,r4, Les tâche T3 et T4 qui
    précède la tâche T5
  • AN r5Max0,0,5 5

9
Contraintes de précédences et   Earliest
Deadline 
  • On transforme hors ligne lensemble des tâches
    liées par des contraintes de précédences en un
    ensemble de tâches indépendantes pour lequel le
    test dacceptabilité de Earliest Deadline est
    valide.
  • Cette transformation sopère sur
  • le paramètre  date de réveil  r une tâche ne
    sera activable que si tous ses prédécesseurs ont
    terminé leur exécution, cest-à-dire que la date
    de réveil de cette tâche doit être supérieure à
    toutes les dates de réveil de ses prédécesseurs
    immédiats augmentées de leur durée dexécution.
  • le délai critique léchéance dune tâche doit
    être inférieure à toutes les échéances de ses
    successeurs immédiats diminuées de leur temps
    dexécution.
  • ri Maxri,MaxrjCj, Tj ? Ti
  • Di MinDi,MinDj-Cj, Ti ? Tj

10
Contraintes de précédences et   Earliest
Deadline 
  • Méthodes de calcul
  • calcul des ri commencer par les tâches qui
    nont pas de prédécesseurs.
  • calcul des Di Commencer par les tâches qui
    nont pas de successeurs.

T2
T3
T1
calcul des ri
calcul des Di
C1
C3
D2
r1
r2
r2
D2
D3
11
Exemple de traitement des contraintes de
précédences et EDF
  • Soient 5 tâches T1, T2, T3, T4, T5 liées par le
    graphe de précédence suivant

12
Exemple de traitement des contraintes de
précédences et EDF calcul des ri
  • Rappel ri Maxri,MaxrjCj, Tj ? Ti
  • r1Maxr1,0, Pas de tâche qui précède la tâche
    T1
  • AN r1Max0,0 0
  • r2Maxr2,0, Pas de tâche qui précède la tâche
    T2
  • AN r2Max5,0 5
  • r3Maxr3,Maxr1C1, La tâche T1 précède la
    tâche T3
  • AN r3Max0,(01) 1
  • r4Maxr4, Max(r1C1), (r2C2), Les tâche
    T1 et T2 qui précède la tâche T3
  • AN r4Max0, Max01,52 7
  • r5Maxr5, Max(r3C3), (r4C4), Les tâche
    T3 et T4 qui précède la tâche T5
  • AN r5Max0, Max12,71 8

Ti
Tj
13
Exemple de traitement des contraintes de
précédences et EDF calcul des Di
  • Rappel Di MinDi,MinDj-Cj, Tj ? Ti
  • léchéance dune tâche doit être inférieure à
    toutes les échéances de ses successeurs immédiats
    diminuées de leur temps dexécution.
  • D5MinD5,Min - , La tâche T5 na aucun
    successeur
  • AN D5Min12, - 12
  • D4MinD4,MinD5-C5, La tâche T5 succède à la
    tâche T4
  • AN D4Min10,Min12-3 9
  • D3MinD3,MinD5-C5, La tâche T5 succède à la
    tâche T3
  • AN D3Min5,Min12-3 5
  • D2MinD2,Min(D4-C4), La tâche T4 succède à
    la tâche T2
  • AN D2Min7,Min9-1 7
  • D1MinD1,Min(D3-C3),(D4-C4), Les tâches T3
    et T4 succèdent à la tâche T1
  • AN D1Min5,Min(5-2),(9-1) 3

14
  • Tâches partageant
  • des ressources critiques

15
Rappel des faits
  • Une ressource critique allouée à une tâche ne
    peut (la majeure partie du temps) être utilisée
    simultanément par plusieurs tâches.
  • Une tâche qui lutilise doit pouvoir aller
    jusquau bout de son utilisation.
  • Lutilisation de cette ressource doit se faire en
    utilisant un mécanisme dexclusion mutuelle.

16
Réflexions
  • Lordonnancement non préemptif résout le problème
  • mais
  • Pour garantir les échéances dun ensemble de
    tâches indépendantes, on a souvent recours à un
    Ordonnanceur préemptif
  • LOrdonnanceur préemptif permet également
    dobtenir des temps de réponse très court de la
    tâche la plus prioritaire de lapplication.

17
Convention
  • Il est habituel dajouter aux paramètres de la
    description de la tâche les éléments suivants 
  • Cia  séquence dinstruction précédant lappel de
    la ressource.
  • Ciß  séquence dinstruction de la section
    critique.
  • Ci?  séquence dinstruction suivant la
    libération de la ressource.
  • et Ci  Cia  Ciß Ci?

P
V
Le code de la tâche en mémoire
Cia
Ci?
Ciß
Cia
ou
Ciß
a0
a1
D0
Ci?
Modèle de la tâche
18
La situation TP0 partageant une ressource ngtm
- Blocage provoqué par TP2 - Préemption de TP1
dans la file des tâches bloquées
Déblocage provoqué par TP2
R1
R1
Blocage provoqué par TP2
Temps de réponse de la tâche TP0
R1
R1
Déblocage provoqué par TP0
Préemption par TP1
Préemption par TP0
R1
R1
R1
Demande ressource critique
Utilisation de la ressource critique
R1
Libération ressource critique
ressources critiques m1 Tâches n3
19
Le problème
  • Si une tâche TP2 qui est en section critique pour
    une ressource R1, perd le processeur
    réquisitionné par lordonnanceur préemptif au
    profit dune autre tâche TP1, cette tâche TP1 ne
    pourra utiliser la ressource R1 tant que TP2
    naura pas terminé sa section critique.
  • Lévaluation de la fin de lexécution des tâches
    ou temps de réponse, dans ce contexte de partage
    de ressources critiques et dordonnancement
    préemptif, est rendue difficile, voire
    impossible.

20
Evaluation du temps de réponse dune tâche
  • Temps de réponse
  • ? Délai entre lactivation dune tâche et sa
    terminaison.
  • On peut parfois trouver une solution exacte selon
    les modèles des tâches.

21
Evaluation du temps de réponse dune tâche
  • Hypothèses
  • Ordonnancement préemptif en ligne.
  • Priorités externes fixe attribuées aux tâches.
  • On considère que le facteur de charge pour la
    configuration de n1 tâches est suffisamment
    faible pour conserver lordonnançabilité des
    tâches quelles que soient les perturbations
    introduites.
  • Objectif
  • Déterminer une borne supérieure pour le temps de
    réponse dune tâche T0 qui a une capacité C0
    TRréel lt TRmax

22
Evaluation du temps de réponse Cas
préemptifTâches indépendantes pas de ressource
critique
  • Cas où les tâches sont indépendantes,
     périodiques et de même période  ou sont
     apériodiques avec une seule occurrence par
    tâche .
  • Principe Pour une tâche i, on cherche à
    évaluer, au pire cas, son temps dexécution son
    temps dattente lorsque les tâches plus
    prioritaire sexécutent. Où encore
  • Reprenez lexemple de lapplication multimédia et
    illustrez le calcul du temps de réponse.
  • hp(i) Ensemble des tâches de plus forte
    priorité que i

23
Contraintes de précédence - Détermination dune
borne supérieure du temps de réponse
  • Application multimédia
  • Rappelez les résultats obtenus par la méthode de
    Chetto/Blazewicz.
  • Déterminez une borne supérieure du temps de
    réponse pour chacune des tâches.
  • Le systèmes est-il ordonnançable ?

24
Evaluation du temps de réponse Cas
préemptifTâches indépendantes pas de ressource
critique
  • Cas où les tâches sont périodiques et de même
    périodes différentes.
  • Vérifiez cette relation à partir dun exemple du
    cours
  • T1 100 T2150 T3350
  • C1 20 C240 C3100

25
Evaluation du temps de réponse Cas
préemptifTâches partageant des ressources
critiques
  • On complète la spécification
  • La gestion de toutes les files dattente
    élection du processeur et attribution des
    ressources respecte la priorité externe des
    tâches.
  • On néglige les temps dexécution nécessaire pour
  • la demande et la libération des ressources
  • la mise en file dattente de la tâche et pour
    réveil.
  • On doit comprendre par cela que
  • si T0 est la tâche la plus prioritaire, elle doit
    sexécuter en préemptant toutes les autres tâches
    sauf celles, appelons-les lp(i), qui, au moment
    du déclenchement de T0 utilisent une des
    ressources que réclamera T0.
  • Par ailleurs, si T0 est bloquée à cause dune
    ressource utilisée par lp(i), ce blocage devra
    cesser dès linstant où lp(i) rendra la
    ressource. T0 devra alors recevoir la ressources
    immédiatement.

26
Evaluation du temps de réponse dune tâche
  • Calcul dune borne supérieure du temps de réponse
    pour
  • T0 la tâche la plus prioritaire dun système de n
    tâches.
  • T0 nétant pas la tâche la plus prioritaire dun
    système de n tâches.

27
Evaluation du temps de réponse dune tâche
  • Conventions On appelle
  • CRi,q la durée dutilisation maximale de la
    ressource critique Ri par la tâche Tq.
  • CRi,max le maximum des CRi,q pour lensemble des
    tâches (pour la ressource Ri).
  • CRmax,q le maximum des CRi,q sur lensemble des
    ressources (pour la tâche Tq).
  • CRmax le maximum des CRi,q sur lensemble des
    ressources et sur lensemble des tâches.

28
Evaluation du temps de réponse pour une tâche la
plus prioritaire
  • Si T0 est la tâche la plus prioritaire et quelle
    est déclenchée à la date r, son exécution peut
    être retardée par les tâches moins prioritaire
    qui, à la date r, occupent les m0 ressources
    critiques que va demander T0.
  • Cette situation peut se décomposer en deux cas

29
Evaluation du temps de réponse pour une tâche la
plus prioritaire
  • Cas 1
  • À la date r, ces m0 ressources sont occupées par
    m0 tâches (représentation sur la diapositive 79).
  • T2 utilise la ressource R1 convoitée par T0
  • On remarque que T1 qui a demandé la ressource R1
    avant le réveil de T0, mais qui ne la pas
    obtenue, se fait préempter par T0 dans la file
    dattente de la ressource.
  • Exemple avec une seule ressource
  • Parmi toutes les ressources (R1 à R2) de la
    diapositive 90, les deux ressources sont
    utilisées par 2 les tâches TP1 et TP2. Soit m0
    2

30
Evaluation du temps de réponse pour une tâche la
plus prioritaire partageant 2 ressources ngtm
R2
R2
ressources critiques m2 Tâches n3
TR0
R1
R1
R2
R2
CR1,1
CR2,2
Ri
Demande ressource critique
R1
Utilisation ressources critiques
R2
Ri
Libération ressource critique
31
Evaluation du temps de réponse pour une tâche la
plus prioritaire partageant m ressources avec n
tâches nltm
  • Cas 2
  • À la date r, ces m0 ressources sont occupées par
    n1 tâches, avec n1 lt m0 (représentation
    diapositive 93)
  • Les tâches TP1 et TP2 utilisent 3 des ressources
    (R2, R3, R4) convoitées par TP0.
  • On constate que dans ce cas, une tâche au moins
    occupe simultanément plusieurs ressources.
  • Le temps maximum doccupation simultané de
    plusieurs ressources par une tâche est alors le
    temps doccupation maximum de la ressource la
    plus longuement occupée.
  • Pour le cas de la diapo 93 TR0 C0
    CRmax,1 CRmax,2
  • avec CRmax,1 CR3,1 ? TP1 utilise R3 plus
    longuement que R4
  • et CRmax,2 CR2,2 ? TP2 nutilise que R2

32
Evaluation du temps de réponse pour une tâche la
plus prioritaire partageant m ressources avec n
tâches nltm
  • Est souvent approximé par
  • où lon considère pour toutes les tâches la
    durée maximum doccupation de la ressource la
    plus longuement utilisée pour lensemble des
    tâches.
  • On voyait déjà sur la dispo 93 que le temps
    de réponse était surestimé, dans la mesure où
    lon prenait en compte la durée doccupation de
    la ressource même si celle-ci était déjà entamée
    au moment de lactivation de la tâche la plus
    prioritaire (T0). Ca devient très franchement
    surestimé avec cette dernière relation.

33
Evaluation du temps de réponse pour une tâche la
plus prioritaire partageant 4 ressources nltm
R2,R3,R4
R2,R3,R4
ressources critiques m4 Tâches n3
TR0
R3,R4
R3
R4
CR3,1
R2
R2
CR2,2
R1
Ri
R2
Demande ressource critique
R3
Utilisation de m ressources critiques
Ri
R4
Libération ressource critique
34
Généralisation de lécriture du temps de réponse
pour une tâche la plus prioritaire
  • Dans un contexte de n tâches et m ressources
    critiques partagées entre toutes les tâches, avec
    m et n fixées, on ne peut se retrouver que dans
    un seul des cas cités précédemment (diapo 89 et
    91) soit nltm, soit ngtm.
  • On exprime le pire temps de réponse par la
    relation suivante
  • Avec n le nombre de tâches
  • m le nombre de ressources partagées

35
Généralisation de lécriture du temps de réponse
pour une tâche qui nest pas la plus prioritaire
  • Dans le cas ou la tâche T0 nest pas la tâche la
    plus prioritaire, il est possible dévaluer
    théoriquement une borne maximale de son temps de
    réponse TR0 en associant les équations des diapos
    84 et 94.
  • Avec n1 le nombre de tâches moins prioritaire
    de T0
  • n2 le nombre de tâches plus prioritaires que T0

36
Limitations de lévaluation du temps de réponse
  • Toutes ces évaluations de la borne maximale du
    temps de réponse pour une tâche quelconque dune
    application temps réel sont en réalité mises en
    défaut lorsque limplémentation par un
    ordonnanceur à priorités fixes ne respecte pas la
    spécification de lalgorithme à priorités fixes
    externes (cf. diapo 85).
  • Le non respect de la spécification, et par
    conséquent la non validité des analyses
    temporelles précédentes et liées à
  • Linversion de priorité
  • Linterblocage.

37
Application Aspect graphique
  • On reprend lexemple dune configuration de trois
    tâches périodiques. Les tâches Tp1 à Tp3. 

38
Séquence RM sur une hyperpériode -Inversion de
priorité Ne respecte pas la spécification
Séquence dinstruction avant laccès à la
ressource critique
Séquence dinstruction de la section critique
Ressource critique indisponible mais aucune tâche
active ne lutilise
39
Séquence RM avec protocole dhéritage de priorité
Respect de la spécification
  • Calculer la borne max du temps de réponse pour
    chacune des tâches.

40
Outil de simulation
  • Loutil de Simulation Cheddar et sa notice
    dutilisation sont disponibles sur Internet à
    ladresse indiquée ci-dessous, en version
    Freeware et vous permet de valider lensemble des
    ordonnancements que vous avez vu tout au long de
    cette présentation.
  • http//beru.univ-brest.fr/singhoff/cheddar

41
Exercices
  • Reprenez lexemple de  Pathfinder  et
     Sojourner  (le robot martien) et déterminez
    une borne max du temps de réponse pour chacune
    des tâches.
  • Rappel des caractéristiques des tâches.

42
Diagramme dexécution de lapplication pour
CTACHE_METEO3 avec gestion de ressources
critiques et protocole basé sur lhéritage de
priorité
ORDO_BUS
P
V
P
V
V
P
V
P
V
P
V
DISTRIBUTION_DONNEES
P
V
P
V
P
V
P
V
TACHE_PILOTAGE
P
TACHE_RADIO
TACHE_CAMERA
TACHE_MESURES
P
V
P
V
TACHE_METEO
20
5
10
15
25
30
Prendre
  • Séquence dexécution valide.

Vendre
43
Diagramme dexécution de lapplication pour
CTACHE_METEO3 avec gestion de ressources
critiques et protocole basé sur la super-priorité
ORDO_BUS
P
V
P
V
P
V
P
V
P
V
P
V
P
V
DISTRIBUTION_DONNEES
P
V
P
V
P
V
TACHE_PILOTAGE
TACHE_RADIO
TACHE_CAMERA
TACHE_MESURES
P
V
P
V
TACHE_METEO
Non préemption de la section critique
20
5
10
15
25
30
Prendre
  • Séquence dexécution valide.

Vendre
44
  • Reprenez lensemble des exemples en utilisant
    lordonnancement EDF.
  • Le systèmes est-il ordonnançable sans protocole
    dhéritage de priorité ?
  • Reprendre les exercices du premier TD sur
    lordonnancement dynamique.

45
Linterblocage
46
Calcul du temps de réponse et comparaison avec le
comportement de lexemple
47
Prévention de linversion de priorité
protocole de priorité plafonnée
48
Introduction à lordonnancement multiprocesseur
  • Ou ordonnancement réparti

49
Ordonnancement conjoint de tâches et de messages
  • Introduction aux systèmes Temps Réel répartis
  • Les facteurs suivants ont conduits à repenser les
    applications temps réel
  • La complexité des procédés à commander ou
    superviser
  • La répartition géographique des procédés
  • La robustesse
  • Exemple de système informatique composé de
    plusieurs unités de traitement (ordinateurs ou
    API), de capteurs, dactionneurs, de
    périphériques de visualisation et de dialogue
    avec lopérateur
  • Dans une usine de production industrielle
    montage de véhicules
  • Dans un laminoir
  • Dans un véhicule

50
Problèmes des systèmes répartis
  • La répartition des systèmes temps réel introduit
    de nouveaux problèmes
  • Lobservation et lévolution des différents
    constituants du procédé est retardée et
    différente dun site à un autre à cause des
    délais de communication variables.
  • Les tests dordonnançabilité et les calculs de
    garantie des contraintes de temps de tâches
    communicantes, donc lordonnancement temps réel
    réparti, sont tributaires de ces dérives
    dhorloges et de ces délais de communication.
  • La tolérance aux fautes est beaucoup plus
    complexe.

51
Ordonnancement dans les systèmes répartis
  • Lordonnancement des tâches dans ce contexte se
    fait à deux niveaux
  • Au niveau de chaque processeur ? ordonnancement
    local
  • Au niveau du placement des tâches sur chaque
    processeur ? ordonnancement global
  • Ordonnancement local allocation dun processeur
    à une tâche en tenant de lurgence et de
    limportance de la tâche.
  • Ordonnancement global permet dessayer de
    garantir les contraintes de tâches en exploitant
    les capacités de traitement des différents
    processeurs composant le système réparti.
  • On ne parlera ici que de lordonnancement global
    placement et migration des tâches

52
Placement des tâches dans un système réparti
  • Les tâches peuvent être affectées/placées de
    manière
  • Statique
  • Il ne peut plus y avoir de tâche pendant
    lexécution de lapplication placement des
    tâches figées à linitialisation du système.
  • Dynamique
  • Lalgorithme dordonnancement choisi de placer
    chaque tâche sur le site le plus apte à respecter
    ses contraintes temporelles, au moment où elle
    est déclenchée.

53
Placement dynamique
  • Les algorithmes de placement dynamique permettent
    de trouver un site où sera exécutée la tâche qui
    vient dêtre créée ou déclenchée.
  • Système réparti sans migration
  • La tâche sera exécutée complètement sur le site
    qui lui a été choisi.
  • Système réparti avec migration
  • La migration dune tâche consiste à transférer
  • son contexte (ie. Les données, le contenu des
    registres du processeur, etc.) qui évolue au fur
    et à mesure que la tâche sexécute
  • Éventuellement son code (les instructions et les
    constantes qui composent la tâche).
  • Une minimisation du temps de migration dune
    tâche consiste à dupliquer son contexte sur les
    cibles susceptibles de laccueillir.

54
Délai de communication
  • Le délai de communication entre deux tâches
    placées sur une même machine est souvent
    considéré comme négligeable.
  • Il est évalué en fonction des instructions
    machines nécessaires pour accéder à une structure
    de données connues des deux tâches communicantes
    (boîte à lettres, file de message, ).
  • Le délai de communication entre deux tâches
    distantes est beaucoup plus complexe et plus
    difficile à évaluer avec précision selon que les
    stations sur lesquelles se trouvent les tâches
    communicantes sont
  • Directement reliées sur un réseau local avec
    topologie en bus, boucle ou étoile.
  • Indirectement reliées sur un réseau maillé.

55
Décomposition des délais de transmission entre
deux tâches distantes
Tâche productrice
Tâche consommatrice
Couches supérieures
Couches supérieures
d1
d6
d2
d5
Sous-couche MAC
Sous-couche MAC
d3
Médium
d4
d3
d2
d1
Tâche productrice
t
Tâche consommatrice
t
d4
d5
d6
d4
Délai de bout en bout
56
Ordonnancement sous contrainte de tempset
dénergie
  • Augmentation continue des performances et
    fonctionnalités des applications nécessitent des
    composants électroniques fonctionnant à des
    fréquences toujours plus élevées.
  • Parallèlement, la technologie des batteries ne
    progresse pas suffisamment vite pour satisfaire à
    ces nouveaux besoins.
  • Lautonomie est un problème majeur pour de
    nombreux équipements électroniques dont
    lalimentation en énergie est assurée par des
    batteries (ordinateurs portables, robots mobiles,
    implants médicaux-pacemaker, téléphones
    portables,

57
Final conclusion
  • Nous avons donc présenté les principaux
    ordonnancements des systèmes temps réel pour des
    tâches indépendantes périodiques.
  • Parmi ceux-ci
  • des ordonnancement statiques (RM et DM)
  • Des ordonnancements dynamiques (EDF et LLF)
  • Puis les ordonnancements prenant en compte des
    tâches apériodiques indépendantes à contraintes
    relatives
  • parmi ceux-ci
  • lordonnancement en tâche de fond
  • les serveurs de tâches
  • serveur de scrutation
  • serveur sporadique
  • Vol de temps  Slack Stealer  et ordonnancement
    conjoint.
  • Nous avons terminé par lordonnancement des
    tâches dépendantes
  • gestion des contraintes de précédences
  • La liste des mécanismes vue nest pas exhaustive,
    il appartiendra au lecteur de compléter ses
    connaissances par la lecture douvrages,
    darticles et de thèses traitant de ce domaine.

58
Avis
  • Nous avons recherché à vérifier
    lordonnançabilité dun systèmes de tâches  en
    ligne  et  hors ligne .
  • Cela nempêche pas que certaines tâches manquent
    leur échéance suite à une surcharge du processeur
    par exemple.
  • Nous navons toléré aucune faute, il nen ai pas
    de même dans les systèmes réels où le fait de
    rater une échéance nest peut être pas vital.
  • De même pour permettre le traitement de tâches
    par exemple apériodiques et de plus très
    prioritaires, on aura tendance à sacrifier
    dautres tâches de priorité moindre.
  • Consulter la littérature pour en savoir plus.

59
  • Thank you for your attention.
  • Que le temps réel soit avec vous.

60
Bibliographie
  • PICos OS temps réel pour lautomobile norme
    OSEK/VDX
  • Présentation OSEK
  • Bruno Gaujal et Nicolas Navet,  Ordonnancement
    sous contrainte de temps et dénergie , ENS Lyon
    et LORIA-INPL

61
  • Introduction sur Xenomai (from RTAI)
  • Linux Temps Réel RTAI/Fusion
  • Enjeux et marché
  • La maîtrise des technologies liées à Internet et
    au numérique permet aux grands industriels de
    lélectronique professionnelle et grand public de
    mener une innovation sans précédent et de
    développer de nouveaux concepts de produits.
    Téléphones mobiles, convergence du téléphone fixe
    et de la voix sur IP (VoIP), TNT, automation,
    biométrie, domotique tous ces secteurs de
    lélectronique sont concernés sans exception. Les
    contraintes conjuguées de time to market et
    dinnovation obligent aux meilleurs choix
    techniques et à la réutilisation de composants
    logiciels éprouvés. Il en découle lémergence
    très forte de Linux et de lOpen Source dans le
    domaine de l'informatique embarquée et du temps
    réel pour lesquels les systèmes propriétaires
    étaient à ce jour la règle.
  • Une nouvelle fois, les logiciels libres
    bousculent le marché et changent la donne comme
    il l'ont fait il y a plusieurs années déjà dans
    le domaine des serveurs d'entreprise.
  • Acteurs et expertise
  • Open Wide, acteur spécialisé de lintégration
    Open Source en environnement industriel depuis
    2001, est de fait le premier acteur européen en
    matière dexpertise Open Source en informatique
    embarquée et temps réel. Ses réalisations et ses
    experts techniques sont prestigieux et leurs
    implications communautaires nombreuses et
    reconnues.
  • Technologie
  • RTAI
  • Historique
  • Le projet RTAI (pour Real Time Application
    Interface) a pour origine une version modifiée de
    RTLinux, initialement un projet open source lancé
    par Victor Yodaiken et Michael Barabanov de
    l'université du nouveau Mexique aux USA. Paolo
    Mantegazza, du département aéronautique de
    l'école polytechnique de Milan (DIAPM) avait à
    l'époque effectué des modifications afin de créer
    un composant dérivé mieux adapté à ses besoins,
    en l'occurrence l'enseignement.
Write a Comment
User Comments (0)
About PowerShow.com