Prise en compte du coût exact de la préemption dans l'ordonnancement temps réel monoprocesseur avec contraintes multiples

Prise en compte du coût exact de la préemption dans l'ordonnancement temps réel monoprocesseur avec contraintes multiples PDF Author: Patrick Meumeu Yomsi
Publisher:
ISBN:
Category :
Languages : fr
Pages : 211

Get Book Here

Book Description
Nous nous intéressons aux problèmes d'ordonnancement de tâches périodiques dans les systèmes temps réel critiques (durs). Dans la littérature, l'approximation du coût de la préemption, qui est la partie variable du coût du système d'exploitation (OS), dans le WCET des tâches conduit à faire un compromis entre gaspillage et sûreté de l'ordonnançabilité, ce qui n'est pas satisfaisant. Quelques travaux ont été proposés pour résoudre ce problème mais les résultats conduisent à la prise en compte soit d'un nombre minimal soit d'un nombre maximal de préemptions. Dans cette thèse, nous introduisons un nouveau modèle pour résoudre le problème général de l'ordonnancement de systèmes temps réel durs avec des contraintes multiples telles que la précédence, la périodicité stricte, la latence et la gigue, tout en tenant compte du coût exact de la préemption pour tous les scénarii de premières activations de toutes les tâches (simultané ou non simultané). Nous avons développé un logiciel appelé SAS (Simulation Analysis of Scheduling) pour mettre à la disposition d'utilisateurs les résultats que nous avons obtenus. Sa principale contribution, par rapport à d'autres outils commerciaux et académiques du même type, est qu'il prend en compte le coût exact de préemption au cours de l'analyse d'ordonnançabilité avec des contraintes multiples.

Prise en compte du coût exact de la préemption dans l'ordonnancement temps réel monoprocesseur avec contraintes multiples

Prise en compte du coût exact de la préemption dans l'ordonnancement temps réel monoprocesseur avec contraintes multiples PDF Author: Patrick Meumeu Yomsi
Publisher:
ISBN:
Category :
Languages : fr
Pages : 211

Get Book Here

Book Description
Nous nous intéressons aux problèmes d'ordonnancement de tâches périodiques dans les systèmes temps réel critiques (durs). Dans la littérature, l'approximation du coût de la préemption, qui est la partie variable du coût du système d'exploitation (OS), dans le WCET des tâches conduit à faire un compromis entre gaspillage et sûreté de l'ordonnançabilité, ce qui n'est pas satisfaisant. Quelques travaux ont été proposés pour résoudre ce problème mais les résultats conduisent à la prise en compte soit d'un nombre minimal soit d'un nombre maximal de préemptions. Dans cette thèse, nous introduisons un nouveau modèle pour résoudre le problème général de l'ordonnancement de systèmes temps réel durs avec des contraintes multiples telles que la précédence, la périodicité stricte, la latence et la gigue, tout en tenant compte du coût exact de la préemption pour tous les scénarii de premières activations de toutes les tâches (simultané ou non simultané). Nous avons développé un logiciel appelé SAS (Simulation Analysis of Scheduling) pour mettre à la disposition d'utilisateurs les résultats que nous avons obtenus. Sa principale contribution, par rapport à d'autres outils commerciaux et académiques du même type, est qu'il prend en compte le coût exact de préemption au cours de l'analyse d'ordonnançabilité avec des contraintes multiples.

Ordonnancement temps réel préemptif multiprocesseur avec prise en compte du coût du système d'exploitation

Ordonnancement temps réel préemptif multiprocesseur avec prise en compte du coût du système d'exploitation PDF Author: Falou Ndoye
Publisher:
ISBN:
Category :
Languages : fr
Pages : 0

Get Book Here

Book Description
Dans cette thèse nous étudions le problème d'ordonnancement temps réel multiprocesseur préemptif avec prise en compte du coût exact du système d'exploitation. Ce coût est formé de deux parties : une partie facile à déterminer, correspondant au coût de l'ordonnanceur et une partie difficile à déterminer, correspondant au coût de la préemption. Cette difficulté est due au fait qu'une préemption peut en engendrer une autre, pouvant ainsi créer un phénomène d'avalanche. Dans un premier temps, nous avons étudié l'ordonnancement hors ligne multiprocesseur de tâches indépendantes avec prise en compte du coût exact de la préemption et proposé une analyse d'ordonnançabilité fondée sur une heuristique d'ordonnancement multiprocesseur. Cette heuristique utilise la stratégie d'ordonnancement multiprocesseur par partitionnement. Pour prendre en compte le coût exact de la préemption sur chaque processeur nous avons utilisé la condition d'ordonnançabilité proposée par Meumeu et Sorel. Cette condition d'ordonnançabilité pour des tâches à priorités fixes, est basée sur une opération binaire d'ordonnancement qui permet de compter le nombre exact de préemption et d'ajouter leur coût dans l'analyse d'ordonnançabilité des tâches. L'heuristique proposée permet de maximiser le facteur d'utilisation restant afin de répartir équitablement les tâches sur les processeurs et de réduire leur temps de réponse. Elle produit une table d'ordonnancement hors ligne. Dans un second temps, nous avons étudié l'ordonnancement hors ligne multiprocesseur de tâches dépendantes avec prise en compte du coût exact de la préemption. Puisque la condition d'ordonnançabilité utilisée pour ordonnancer les tâches indépendantes ne s'applique qu'à des tâches à priorités fixes, elle ne permet pas de gérer les inversions de priorités que peuvent entraîner les tâches dépendantes. Nous avons donc proposé une nouvelle condition d'ordonnançabilité pour des tâches à priorités dynamiques. Elle prend en compte le coût exact de la préemption et les dépendances sans aucune perte de données. Ensuite en utilisant toujours la stratégie d'ordonnancement par partitionnement, nous avons proposé pour des tâches dépendantes une heuristique d'ordonnancement multiprocesseur qui réutilise cette nouvelle condition d'ordonnançabilité au niveau de chaque processeur. Cette heuristique d'ordonnancement prend en compte les coûts de communication inter-processeurs. Elle permet aussi de minimiser sur chaque processeur le makespan (temps total d'exécution) des tâches. Cette heuristique produit pour chaque processeur une table d'ordonnancement hors ligne contenant les dates de début et de fin de chaque tâches et de chaque communication inter-processeur. En supposant que nous avons une architecture multiprocesseur de type dirigée par le temps (Time-Triggered) pour laquelle tous les processeurs ont une référence de temps unique, nous avons proposé pour chacun des processeurs un ordonnanceur en ligne qui utilise la table d'ordonnancement produite lors de l'ordonnancement hors ligne. Cet ordonnanceur en ligne a l'avantage d'avoir un coût constant qui de plus est facile à déterminer de manière exacte. En effet il correspond uniquement au temps de lecture dans la table d'ordonnancement pour obtenir la tâche sélectionnée lors de l'analyse d'ordonnançabilité hors ligne, alors que dans les ordonnanceurs classiques en ligne ce coût correspond à mettre à jour la liste des tâches qui sont dans l'état prêt à l'exécution puis à sélectionner une tâche selon un algorithme, par exemple RM, DM, EDF, etc. Il varie donc avec le nombre de tâches prêtes à s'exécuter qui change d'une invocation à l'autre de l'ordonnanceur. C'est ce coût qui est utilisé dans les analyses d'ordonnançabilités évoquées ci-dessus. Un autre avantage est qu'il n'est pas nécessaire de synchroniser l'accès aux mémoires de données partagées par plusieurs tâches, car cette synchronisation a été déjà effectuée lors de l'analyse d'ordonnançabilité hors ligne.

Ordonnancement temps réel multiprocesseur de tâches non-préemptives avec contraintes de précédence, de périodicité stricte et de latence

Ordonnancement temps réel multiprocesseur de tâches non-préemptives avec contraintes de précédence, de périodicité stricte et de latence PDF Author: Omar Kermia
Publisher:
ISBN:
Category :
Languages : fr
Pages : 208

Get Book Here

Book Description
La réalisation de systèmes temps réel embarqués complexes que l'on trouve dans les domaines de l'avionique, de l'automobile, de la robotique, etc. conduisent à résoudre des problèmes d'ordonnancement temps réel non préemptif pour des architectures multiprocesseurs en respectant des contraintes multiples de précédence, de périodicité stricte et de latence. Dans la littérature les problèmes de ce type sont résolus avec des méthodes approchées (heuristiques) donnant des résultats dans un temps raisonnable comparées à des méthodes exactes. Par ailleurs le problème tel que nous le posons a été peu étudié. Ce dernier étant complexe nous avons choisi d'étudier séparément la périodicité d'une part et la latence d'autre part, avec aussi dans les deux cas des contraintes de précédence. L'ensemble des résultats obtenus est utilisé pour traiter l'ordonnancement avec les trois contraintes. Afin de résoudre le problème d'ordonnancement avec précédence et périodicité stricte nous avons proposé une heuristique composée de trois étapes. La première étape appelée "assignation" est la plus importante car elle permet de décider si un système est ordonnançable ou pas sans être obligé d'attendre l'exécution des deux autres étapes de l'heuristique. Comme nous avons choisi d'utiliser la méthode du partitionnement - partitionner le problème multiprocesseur en plusieurs problèmes monoprocesseur - plutôt que la méthode globale pour faire l'ordonnancement multiprocesseur, nous avons pu donner une condition pour qu'une tâche, éventuellement plusieurs, soient ordonnançables sur un processeur auquel d'autres tâches ont déjà été assignées. Nous avons proposé deux versions d'algorithme d'assignation, une version gloutonne très rapide et une version .recherche locale. fondée sur le retour arrière (backtracking) qui revient à tester localement plusieurs assignations pour trouver celle qui satisfait les contraintes de périodicité stricte. Nous avons montré que la version "recherche locale", bien que moins rapide que la version gloutonne, donne des résultats très proches de ceux d'un algorithme exact de type "Branch & Cut". La seconde étape appelée "déroulement". consiste simplement à répéter chaque tâche et les arcs de précédence qui la concernent suivant le rapport entre l'hyper-période (PPCM des périodes de toutes les tâches) et sa période. La troisième étape consiste à ordonnancer les tâches sur les processeurs auxquels elles ont été assignées tout en minimisant le temps d'exécution de toutes les tâches (makespan), en prenant en compte le coût des communications interprocesseurs dues au fait que deux tâches liées par une précédence ont été assignées à deux processeurs différents. Par ailleurs comme nous considérons des systèmes embarqués pour lesquels les ressources sont limitées nous avons ajouté une quatrième étape, spécifique à l'embarqué, qui effectue de manière gloutonne de la répartition de charge et de mémoire. L'heuristique d'ordonnancement avec précédence et périodicité stricte a été programmée en OCAML dans le logiciel SynDEx diffusé par l'équipe projet AOSTE. Pour tester ces résultats théoriques ainsi que leur implantation dans le logiciel SynDEx on a effectué une expérimentation sur une application de suivi en train virtuel de CyCabs (véhicule électrique automatique conçu par l'équipe projet IMARA) avec contraintes de précédence et de périodicité. Afin de résoudre le problème d'ordonnancement multiprocesseur avec précédence et latence nous avons effectué une étude d'ordonnançabilité qui a montré que sa résolution est très liée aux chemins de tâches reliant la paire de tâches sur laquelle la contrainte de latence est imposée. Nous avons proposé une heuristique dans le cas d'une seule latence se composant d'une première étape appelée "clusterisation" et une deuxième étape appelée "union". La clusterisation consiste à regrouper les tâches faisant partie du même chemin dans le graphe et l'union cherche à adapter le nombre de ces clusters au nombre de processeurs en procédant à des unions entre clusters. Le cas de plusieurs latences demande de prendre en compte les différentes possibilités de chemins entre plusieurs paires de tâches soumises à différentes latences. Pour le cas le plus complexe correspondant à des chemins, entre paires de tâches soumises à différentes latences, croisés on a proposé une heuristique qui minimise la durée de l'ordonnancement entre chacune de ces paires de tâches. Les résultats obtenus précédemment ont été utilisés pour proposer une heuristique d'ordonnancement avec contraintes de précédence, de périodicité et de latence.

ORDONNANCEMENT EN-LIGNE DANS LES SYSTEMES INFORMATIQUES TEMPS REEL

ORDONNANCEMENT EN-LIGNE DANS LES SYSTEMES INFORMATIQUES TEMPS REEL PDF Author: Patrick Martineau
Publisher:
ISBN:
Category :
Languages : fr
Pages : 244

Get Book Here

Book Description
UN SYSTEME INFORMATIQUE DE CONTROLE TEMPS-REEL EST CHARGE DE L'ACQUISITION DE MESURES, LE CALCUL ET L'EMISSION DE COMMANDES AINSI QUE DE LA GESTION DES EVENEMENTS D'ALARME. ON PARLE D'INFORMATIQUE TEMPS-REEL LORSQUE CES ACTIVITES SONT CONTRAINTES A S'EXECUTER DANS UN LAPS DE TEMPS LIMITE. L'ORDONNANCEMENT DE L'EXECUTION DES PROGRAMMES INFORMATIQUES, APPELES TACHES, CONSTITUE UN PROBLEME COMPLEXE. POUR MODELISER LES CONTRAINTES DE TEMPS, UNE DATE CRITIQUE EST ASSOCIEE A CHAQUE TACHE. SI CELA EST POSSIBLE, L'EXECUTIF DOIT ACHEVER L'EXECUTION DE CHAQUE TACHE AVANT SA DATE CRITIQUE ; SINON, IL DOIT MINIMISER L'IMPACT DU DEPASSEMENT SUR LE SYSTEME CONTROLE. CETTE THESE PROPOSE DES SOLUTIONS A L'ORDONNANCEMENT DE TACHES DANS UN SYSTEME REPARTI, UN SYSTEME CONSTITUE DE PLUSIEURS PROCESSEURS ELOIGNES, RELIES ENTRE EUX PAR UN CANAL DE COMMUNICATION. L'APPROCHE PROPOSEE SE DECOMPOSE EN DEUX ETAPES: 1-L'ORDONNANCEMENT LOCAL: DANS UN PREMIER TEMPS, NOUS PROPOSONS UN ALGORITHME D'ORDONNANCEMENT MONOPROCESSEUR CAPABLE DE PRENDRE EN COMPTE CONTRAINTES DE PRECEDENCE, CONTRAINTES D'EXCLUSION MUTUELLE ET DE DECIDER EN-LIGNE S'IL PEUT GARANTIR L'EXECUTION AVANT ECHEANCE D'UNE CHARGE SUPPLEMENTAIRE. DANS LE CAS D'UN REJET, NOUS EVALUONS LES PERFORMANCES DE NOUVEAUX ALGORITHMES CONCUS POUR PRENDRE EN COMPTE DES SURCHARGES TEMPORAIRES DANS UN CONTEXTE DE PARTAGE DES RESSOURCES. CES ALGORITHMES CONSISTENT A ECARTER LES TACHES LES MOINS IMPORTANTES POUR L'ENVIRONNEMENT. 2-L'ORDONNANCEMENT REPARTI: UNE COOPERATION ENTRE LES DIFFERENTS NUDS DU SYSTEME PEUT ETRE IMPLEMENTEE POUR PERMETTRE L'EXECUTION DES TACHES PRECEDEMMENT ECARTEES. AINSI, LORSQU'UNE SURCHARGE LOCALE A UN NUD EST DETECTEE, LES TACHES LES MOINS IMPORTANTES POUR LE SYSTEME CONTROLE SONT ECARTEES. SI C'EST POSSIBLE, ELLES SERONT EXECUTEES SUR UN AUTRE NUD DU RESEAU. DANS LE CAS D'UNE SURCHARGE GLOBALE DU RESEAU, LES TACHES LES PLUS IMPORTANTES SONT EXECUTEES. L'ENSEMBLE DE CES TRAVAUX S'INTEGRE DANS LE PROJET EXORAT, EXECUTIF A ORDONNANCEMENT ADAPTATIF TOLERANT LES FAUTES, DESTINE A UN SYSTEME REPARTI

Ordonnancement non préemptif et condition d'ordonnançabilité pour systèmes embarqués à contraintes temps réel

Ordonnancement non préemptif et condition d'ordonnançabilité pour systèmes embarqués à contraintes temps réel PDF Author: Liliana Cucu
Publisher:
ISBN:
Category :
Languages : fr
Pages : 139

Get Book Here

Book Description
Après un état de l'art sur l'ordonnancement en général et l'ordonnancement temps réel en particulier, permetttant de préciser les notions utilisées en suite et après avoir motivé l'intérêt d'une nouvelle contrainte temps réel de latences, nous proposons un modèle qui formalise les systèmes temps réel avec contraintes de précédences, de périodicités et de latences. Dans ce modèle, les précédences sont définie par un graphe orienté acyclique. Pour le cas monoprocesseur, on étudie trois problèmes d'ordonnancement : des systèmes avec contraintes de précédences et de périodicités, des systèmes avec contraintes de précédences et latences et des systèmes avec contraintes de précédences, de périodicités et de latences. Pour chaque problème on étudie la cohérence entre les contraintes, on donne des conditions d'ordonnançabilité et on propose un algorithme prouvé optimal dans le sens où s'il y a un ordonnancement, l'algorithme le trouvera. On passe en suite au cas multiprocessor où l'architecture est définie par un graphe non-orienté. On étudie trois problèmes d'implantation (distribution et ordonnancement) : des systèmes avec contraintes de précédences et de périodicités, systèmes avec contraintes de précédences et de latences et systèmes avec contraintes de précédences, de périodicités et de latences. Pour chaque problème, le modèle prend en compte les communications. On prouve que ces trois problèmes sont NP-difficiles et on propose, donc, des heuristiques. Les performances de chaque heuristique sont comparées à celles d'algorithme exacte de type "branch and bound", en utilisant des simulations numériques.

ETUDE D'UN ALGORITHME D'ORDONNANCEMENT EN TEMPS REEL POUR UN MONOPROCESSEUR SOUMIS A DES CONTRAINTES DE DELAIS CRITIQUES

ETUDE D'UN ALGORITHME D'ORDONNANCEMENT EN TEMPS REEL POUR UN MONOPROCESSEUR SOUMIS A DES CONTRAINTES DE DELAIS CRITIQUES PDF Author: Daniel JULVE
Publisher:
ISBN:
Category :
Languages : fr
Pages : 40

Get Book Here

Book Description
LE PROBLEME CONSIDERE ICI EST CELUI DE L'ORDONNANCEMENT DYNAMIQUE DES TRAVAUX EN TEMPS REEL POUR LES SYSTEMES INFORMATIQUES OU LE RESPECT DES DELAIS D'ACHEVEMENT INDIVIDUELS POUR CHACUNE DES TACHES EST PRIS COMME UNE CONTRAINTE CRITIQUE.