26
F. Touchard Introduction aux systèmes temps réels TD Ordonnancement 1 TD 1 Ordonnancement

TD1 Ordo Corrige

Embed Size (px)

DESCRIPTION

n,

Citation preview

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 1

    TD 1Ordonnancement

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 2

    Ordonnancement EDFOn considre 3 tches priodiques :

    Tp1 : (r0 = 0, C = 5, D = 25, P = 30) Tp2 : (r0 = 0, C = 10, D = 40, P = 50) Tp3 : (r0 = 0, C = 20, D = 55, P = 75)

    1) quelle est la priode dtude ?2) cette configuration est-elle ordonnanable par EDF3) tracer le chronogramme. Identifier les temps creux.

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 3

    Ordonnancement priode d'tude :

    PPCM(30, 50, 75) = 150 Ordonnanabilit par EDF

    condition suffisante :

    CH = 5/25 + 10/40 + 20/55 = 0,81

    CH=i=1

    n Ci

    Di

    1

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 4

    Ordonnancement EDF

    0

    0

    0

    30 60 90 120 150

    Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 150140

    55 75 150130

    Tp1 : (r0 = 0, C = 5, D = 25, P = 30) Tp2 : (r0 = 0, C = 10, D = 40, P = 50) Tp3 : (r0 = 0, C = 20, D = 55, P = 75)

    5

    5 15

    15 30 35

    35 40

    60

    65

    90

    95

    95 100

    5040 7565 120110 125 1500 5 15 60 9590 100

    125

    100 110

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 5

    Ordonnancement EDF

    0

    0

    0

    30 60 90 120 150

    Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 150140

    55 75 150130

    5

    5 15

    15 30 35

    35 40

    60

    65

    90

    95

    95 100

    5040 7565 120110 125 1500 5 15 60 9590 100

    125

    100 110

    temps creux : [40, 50], [65, 75], [110, 120], [125, 150]

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 6

    Ordonnancement EDF

    temps creux : [40, 50], [65, 75], [110, 120], [125, 150]

    0

    0

    0

    30 60 90 120 150Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 100 150140

    55 75 150130

    5040 7565 120110 125 1500

  • F.TouchardCoursTempsRelESILDpartementd'Informatique3meanne200920107

    Ordonnancement EDF On introduit 5 tches apriodiques :

    Tap1 : (r0 = 40, C = 10, D = 15) Tap2 : (r0 = 70, C = 15, D = 35) Tap3 : (r0 = 100, C = 20, D = 40) Tap4 : (r0 = 105, C = 5, D = 25) Tap5 : (r0 = 120, C = 5, D = 15)

    Quelles sont les tches qui peuvent tre ordonnances dans les temps creux des tches priodiques ?

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 8

    Ordonnancement EDF

    Tap1 (r=40, C=10, D=15) accepte dans le temps creux [40, 50]

    0

    0

    0

    30 60

    90 120 150Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 100 150140

    55 75 150130

    5040 7565 120110 125 150

    Tap1

    Tap1 40 55

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 9

    Ordonnancement EDF

    Tap2 (r=70, C=15, D=35) n'est pas accepte car il n'y a pas de temps creux suffisant

    pour l'excuter avant son chance t=105

    0

    0

    0

    30 60

    90 120 150Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 100 150140

    55 75 150130

    5040 7565 120110 125 150

    Tap1Tap2

    75 105

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 10

    Ordonnancement EDF

    Tap3 (r=100, C=20, D=40) est accepte car elle peut s'excuter dans les temps creux

    [110, 120] et [125, 150] et se terminer avant son chance t=140

    0

    0

    0

    30 60

    90 120 150Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 100 150140

    55 75 150130

    5040 7565 120110 125 150

    Tap1 Tap3110 135

    Tap3100 140

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 11

    Ordonnancement EDF

    Tap4 (r=105, C=5, D=25) peut tre accepte car son excution retarde la terminaison

    de Tap3 sans remettre en cause le respect de l'chance

    0

    0

    0

    30 60

    90 120 150Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 100 150140

    55 75 150130

    5040 7565 120110 125 150

    Tap1 Tap3

    Tap3Tap4Tap1140

    Tap4105 130

    140

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 12

    Ordonnancement EDF

    Tap5 (r=120, C=5, D=15) ne peut tre accepte car son excution retarderait la

    terminaison de Tap3 et remettrait en cause le respect de l'chance

    0

    0

    0

    30 60

    90 120 150Tp1

    Tp2

    Tp3

    25 55 85 115 145

    5040 90 100 150140

    55 75 150130

    5040 7565 120110 125 150

    Tap1 Tap3

    Tap1 Tap3Tap4

    Tap5

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 13

    Serveur sporadique 2 tches priodiques + 1 serveur sporadique

    J1 : t1 = 0, C1 = 1, T1 = 5 J2 : t2 = 0, C2 = 4, T2 = 15 SS : Cs = 5, Ts = 10

    tches apriodiques : A1 : ta1 = 4, Ca1 = 2 A2 : ta2 = 8, Ca2 = 2

    ordonnancement : J1

    J2

    SSactive

    tchesapriodiques

    CS

    0 2 20 2 2

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 14

    La mission Pathfinder sur Mars

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 15

    La mission Pathfinder sonde sur Mars, arrive le 4 juillet 1997 robot mobile Sojourner charg de diffrentes tches

    photos relevs mto prlvements

    poids : 11.5kg vitesse : 24m/h puissance totale : 30W liaison UHF avec la sonde

    Pathfinder

    bug dans la gestion des ressources critiques perte de donnes importantes

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 16

    monoprocesseur RS6000 (architecture RISC de IBM)(+ un processeur Intel 8085 pour les automatismes de base du robot)

    Architecture

    Processeur MmoiresInterfacecamra

    Interfaceradio

    Interfacealtimtre

    Interfaceacclromtre

    Interfaceenregistreur

    Interfacebus

    Interfacecapteur

    Interfacevannes

    Interfacemoteurs

    Interfaceanalyseur

    camrametteurradio

    enregistreurmto

    acclromtrealtimtrealtimtre

    moteurs vannes capteurssolaires

    analyseurd'toiles

    busVME

    bus1553

    bus1553

    SondePathfinder

    RobotSojourner

    Coupleur

    Coupleur

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 17

    Spcification fonctionnelle le systme de gestion de la sonde communique avec

    l'extrieur par la carte radio pour les liaisons avec la terre la carte de liaison avec la camra l'interface avec le bus 1553 pour les autres

    capteurs/actionneurs

    Gestionsonde

    Pathfinder

    Carteradio

    Cartecamra

    Rception

    Emission

    Images

    Commandescamra

    Donnesmesures

    Commandes

    Interfacebus1553

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 18

    Architecture logicielle multitche gre par le noyau Vxworks (Wind River) 25 tches

    priodiques (ex. : gestion du bus 1553) apriodiques (ex. : analyse des erreurs) communication et synchronisation par des files de

    messages suivant les phases de la mission (vol interplantaire,

    aterrissage, exploration par le robot), toutes les tches ne sont pas utiles

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 19

    Architecture logicielle Liste des tches et priorits relatives

    Priorit Tche Naturedelatche

    Maximum ORDO_BUS ordonnanceurdubus1553

    DISTRIBUTION_DONNEES distributiondesdonnesdubus1553

    TCHE_PILOTAGE pilotagedel'application(robot) TCHE_RADIO gestiondescommunicationsradio TCHE_CAMRA gestiondelacamra TCHE_MESURES mesures

    Minimum TCHE_METEO gestiondesdonnesmto

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 20

    Architecture logicielle Architecture en tches

    ORDO_BUS

    HTR

    commandes

    TCHE_CAMRAHTR

    commandecamra

    TCHE_RADIOHTR

    mission

    images

    rception

    DISTRIBUTION_DONNES

    HTR

    TCHE_PILOTAGEHTR

    TCHE_MESUREHTR

    TCHE-MTOHTR

    LIRE

    CRIRE

    Tampon_donnes

    donnes mesures

    (HTR : horloge temps rel)

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 21

    Utilisation du bus 1553 la gestion du bus est pilote par une horloge 8 Hz

    (125ms) 2 tches pour rguler le transfert des donnes

    ORDO_BUS priorit maximale vrifie que le transfert des donnes a t correctement

    effectu et prpare le transfert suivant DISTRIBUTION_DONNES

    2 me priorit collecte les donnes sur le bus et les place dans la mmoire

    tampon

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 22

    Caractristiques des tches

    pour CMTO = 2, U=0.72 et pour CMTO = 3, U=0.725 analyse Rate Monotonic pourrait s'appliquer (URMA=0.729), mais partage de la ressource MMOIRE_TAMPON analyse dtaille

    Paramtres(ms) Paramtresrduits

    Tche Priorit Ci Pi Ci Pi

    Tempsutilisationressource

    ORDO_BUS 7 25 125 1 5

    DISTRIBUTION_DONNES 6 25 125 1 5 1TCHE_PILOTAGE 5 25 250 1 10 1TCHE_RADIO 4 25 250 1 10 TCHE_CAMRA 3 25 250 1 10 TCHE_MESURES 2 50 5000 2 200 2TCHE_MTO 1 [50,75] 5000 [2,3] 200 [2,3]

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 23

    recherche d'ordonnancement priode d'tude thorique : 5000ms

    mais on va se contenter d'tudier sur 250ms en considrant que les tches MESURES et MTO viennent de se terminer et en se mettant sur la priode suivante

    tudier les cas CMTO = 2 et CMTO = 3 remplir les chronogrammes dans le cas o lhritage de

    priorit nest pas activ

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 24

    diagramme d'excution pour C=2

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    ORDO_BUS

    TCHE_RADIO

    TCHE_CAMRA

    TCHE_MESURES

    TCHE_MTO

    RR R

    R R

    DISTRIBUTION_DONNES

    TCHE_PILOTAGE

    R R

    R R

    R

    R

    Inversion de priorit

    Inversion de priorit

    R

    R R R R

    R R

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 25

    diagramme d'excution pour C=3ORDO_BUS

    DISTRIBUTION_DONNES

    TCHE_PILOTAGE

    TCHE_RADIO

    TCHE_CAMRA

    TCHE_MESURES

    TCHE_MTO R R

    Inversion de priorit

    Inversion de priorit

    R R

    RR R R R

    R R R

    ResetALARME0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

  • F. Touchard Introduction aux systmes temps rels TD Ordonnancement 26

    C=3 avec hritage de prioritORDO_BUS

    TCHE_RADIO

    TCHE_CAMRA

    TCHE_MESURES

    TCHE_MTO

    RDISTRIBUTION_DONNES

    TCHE_PILOTAGE R

    R

    R

    R R R R

    R

    R R

    R R

    R R

    R

    R

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 80 19 20 21 22 23 24 25

    R

    Hritagedepriorit

    Diapo 1Diapo 2Diapo 3Diapo 4Diapo 5Diapo 6Diapo 7Diapo 8Diapo 9Diapo 10Diapo 11Diapo 12Diapo 13Diapo 14Diapo 15Diapo 16Diapo 17Diapo 18Diapo 19Diapo 20Diapo 21Diapo 22Diapo 23Diapo 24Diapo 25Diapo 26