Simulation et évaluation d algorithmes. Ordonnancement temps-réel. sous des contraintes de QoS
|
|
|
- Noëlle Laperrière
- il y a 8 ans
- Total affichages :
Transcription
1 LABORATOIRE D INFORMATIQUE DE NANTES-ATLANTIQUE Simulation et évaluation d algorithmes d ordonnancement temps-réel sous des contraintes de QoS Audrey MARCHAND et Maryline SILLY-CHETTO Laboratoire d Informatique de Nantes-Atlantique 2, rue de la Houssinière B.P NANTES CEDEX 3 Ordonnancement temps-réel RAPPORT DE RECHERCHE N o Septembre 2004 LINA, Université de Nantes 2, rue de la Houssinière BP NANTES CEDEX 3 Tél. : Fax. :
2 Audrey MARCHAND et Maryline SILLY-CHETTO Simulation et évaluation d algorithmes d ordonnancement temps-réel sous des contraintes de QoS 68 p. Les rapports de recherche du Laboratoire d Informatique de Nantes-Atlantique sont disponibles aux formats PostScript et PDF à l URL : Research reports from the Laboratoire d Informatique de Nantes-Atlantique are available in PostScript and PDF formats at the URL: Septembre 2004 by Audrey MARCHAND et Maryline SILLY-CHETTO
3 Simulation et évaluation d algorithmes d ordonnancement temps-réel sous des contraintes de QoS Audrey MARCHAND et Maryline SILLY-CHETTO Résumé La perspective traditionnelle de la théorie de l ordonnancement temps-réel s est largement reposée sur la communauté des systèmes temps-réel à contraintes strictes dans lesquels le manquement au respect de toutes les échéances des tâches (dites critiques) a souvent des conséquences catastrophiques sur le système contrôlé ainsi que sur son environnement. Cependant, cette perspective peut sembler parfois restrictive et peu adaptée pour un certain nombre d applications émergeantes pour lesquelles, la gestion des cas de surcharge réside dans le fait d écarter certaines instances de tâches de façon à améliorer l utilisation effective des ressources tout en minimisant la dégradation causée par le rejet de ces instances. Ce rapport s intéresse à la simulation et à l évaluation d algorithmes d ordonnancement temps-réel dynamiques sous des contraintes de Qualité de Service (QoS). Les travaux décrits concernent plus précisément l ordonnancement conjoint de tâches périodiques à pertes contraintes et de tâches apériodiques. L approche présentée vise à exploiter les pertes autorisées au niveau des tâches périodiques dans le but de minimiser le temps de réponse moyen aux requêtes apériodiques, par le biais de l utilisation du serveur de tâches apériodiques Earliest Deadline as Late as possible (EDL). Catégories et descripteurs de sujets : D.4.1 [Operating systems]: Process management Termes généraux : Algorithms, Management, Performance Mots-clés additionnels et phrases : systèmes temps-réel, ordonnancement, qualité de service, Earliest-deadline, tâches périodiques, serveur de tâches apériodiques
4
5 1 Introduction Un système temps-réel est un système dans lequel l exactitude d un calcul dépend non seulement du résultat logique (logical correctness) mais également de l instant auquel le résultat est produit (timeliness). Le système doit ainsi être capable de réagir suffisamment rapidement pour que la réaction ait un sens. Par conséquent, une application temps-réel implique généralement des tâches auxquelles sont associées des contraintes d échéances temporelles. A l heure actuelle, un nombre important de solutions ont été proposées pour ordonnancer des tâches temps-réel à contraintes strictes. Cependant, au cours des dernières années, des applications "nouvelles" ont émergé pour lesquelles il n est pas nécessaire de respecter toutes les échéances des tâches pourvu que les violations d échéances soient suffisamment espacées dans le temps. Ces applications émergeantes dans les domaines du multimedia et du contrôle automatique notamment, affichent des contraintes temps-réel firm. En d autres termes, les violations d échéances autorisées entraînent uniquement des dégradations de Qualité de Service (QoS) sans compromettre le bon fonctionnement du système et sans mettre en danger son intégrité. La performance du système est localement ou globalement dégradée tout en conservant ce dernier dans un état sécuritaire. Dans ce contexte, il semble important de définir les besoins en termes de QoS d un système, afin de délivrer un service à la hauteur des besoins décrits du point de vue de l utilisateur du système. Considérons par exemple un système d antiblocage des roues dans lequel typiquement, une tâche temps-réel détermine le début du freinage en scrutant périodiquement la vitesse de rotation échantillonnée de chaque roue. Dans un tel système, on se rend bien compte qu il n est pas nécessaire que toutes les instances de la tâche s exécutent dans le respect de leurs échéances. Cependant, il faut veiller à limiter le nombre d instances consécutives qui violent leurs échéances. Une situation similaire peut être rencontrée dans une application multimédia où le rejet de certaines instances de tâches de transmission de paquets de pixels par exemple, se traduira par une détérioration de l image au niveau du processus de reconstruction. Là encore, on s aperçoit de la nécessité de contrôler et d apposer des contraintes sur le nombre de paquets à transmettre (vis à vis d une période temporelle ou du nombre de requêtes de la tâche considérées). Les travaux concernant cette problématique ont été initiés par Hamdaoui et Ramanathan [5] par la définition d échéances (m,k)-firm, selon lesquelles chaque tâche périodique doit respecter au moins m échéances sur une fenêtre de k activations. Koren et Shaha [7] introduirent également la notion de facteur de pertes (skip factor) pour gérer des systèmes surchargés notamment. Si une tâche possède un paramètre de pertes s alors, elle écartera l exécution d une invocation parmi s invocations. Il s agit en fait d un cas particulier du modèle (m,k)-firm où m = k 1. Cette approche fournit une solution au problème de l ordonnancement de systèmes surchargés, tout en représentant une garantie de QoS pour les applications temps-réel. Caccamo et Buttazzo dans [2, 1] s appuyèrent sur ce modèle en ordonnançant des ensembles de tâches hybrides constituées de tâches périodiques tolérant d afficher des pertes et de tâches apériodiques à contraintes relatives. Ils proposèrent et analysèrent un algorithme, basé sur une variante de l algorithme d ordonnancement Earliest Deadline First (EDF), dans le but d exploiter les pertes des tâches périodiques en utilisant le serveur Total Bandwidth Server (TBS). La problématique décrite dans ce rapport est proche de cette dernière dans le sens où elle repose sur la minimisation du temps de réponse de tâches apériodiques à contraintes strictes ou relatives, en utilisant le serveur Earliest Deadline as Late as possible (EDL), sous des contraintes de pertes au sens Skip-Over. L approche tend à distribuer le temps CPU gagné du fait des pertes, de manière à améliorer le temps de réponse des requêtes apériodiques. 2 La Qualité de Service (QoS) en temps-réel 2.1 La notion de temps-réel firm La classification traditionnelle des systèmes temps-réel repose sur trois classes caractérisant les conditions temps-réel apposées sur ces systèmes. En effet, on distingue classiquement différents niveaux de contraintes temporelles : souple (soft) : la performance du système est dégradée sans engendrer des conséquences dramatiques si les contraintes temporelles ne sont pas rencontrées,
6 6 stricte (hard) : l incapacité du système à rencontrer les contraintes temporelles cause la faute du système et entraîne souvent des conséquences catastrophiques sur l environnement contrôlé, ferme (firm) : contrainte sévère mais où une faible probabilité de manquer les limites temporelles peut être tolérée. Les tâches temps-réel peuvent également être classées en plusieurs catégories de contraintes temporelles selon qu elles s appuient sur le respect d un des critères suivants : échéance (Deadline) : une tâche doit être achevée avant un instant donné dans le temps, durée d exécution nulle (Zero Execution Time) : la tâche doit être effectuée dans une période de temps égale à zéro dans le cas idéal, Qualité de Service (Quality Of Service) : la tâche doit effectuer une quantité fixée de service par unité de temps. Parmi les formes d expression de la QoS les plus courantes, on peut citer : la QoS déterministe : une valeur ou un intervalle de valeurs à respecter est défini, la QoS probabiliste : une probabilité P est établie. L inconvénient de ce niveau de service plus souple, réside dans le choix de probabilités adaptées, la QoS statistique : la contrainte est conforme à une certaine distribution stochastique. Pour une application ou un environnement parfaitement connu, la garantie déterministe est faisable. Dans d autres cas, il est impossible de prévoir et décrire le pire cas imaginable à cause de la dynamique du système et des perturbations aléatoires imprévisibles inhérentes à l environnement. L introduction du temps-réel "firm" envisage une définition plus fine des niveaux de QoS. Ainsi, une tâche ayant des contraintes temps-réel souples est dite firm si, considérant le fait qu une des instances de la tâche ne pourra être respectée, celle-ci est rejetée par le système. Cette politique permet ainsi de réduire la charge du système. Dans ce schéma, le traitement en retard des instances est alors considéré comme inutile. 2.2 Extension à la notion (m,k)-firm Hamdaoui et Ramanathan dans [5] introduisent cette notion d échéance (m,k)-firm. Selon leur définition, une source est soumise à une contrainte (m,k)-firm si au moins m parmi k instances consécutives doivent être exécutées dans le respect de leur échéance, avec m k. Le système est dit en échec dynamique si moins de m instances respectent leur échéance dans une fenêtre de k instances consécutives. On peut également remarquer que cette notion d échéances (m,k)-firm est une généralisation des échéances firm et soft. Aussi, une tâche à contraintes strictes peut-elle être représentée par une échéance (1,1)-firm. De même, une échéance (1,2)-firm établit la contrainte suivante : la tâche ne doit pas manquer 2 instances consécutives. 3 L ordonnancement de tâches périodiques sous contraintes de QoS 3.1 Description du modèle Skip-Over Dans ce modèle à pertes sporadiques, chaque tâche périodique T i est caractérisée par une durée d exécution dans le pire cas c i, une période p i, une échéance relative égale à sa période, et un paramètre de pertes s i, 2 s, qui fournit la tolérance de la tâche à manquer ses échéances. Selon la terminologie introduite par Koren et Shasha dans [7], chaque instance de tâche peut être rouge (red) ou bleue (blue). Une instance de tâche rouge doit être accomplie avant son échéance ; une instance de tâche bleue peut être abandonnée à tout moment. Le modèle répond à un certain nombre de règles élémentaires que nous énonçons ci-après : la distance entre 2 pertes consécutives doit être d au moins s périodes. si une instance de tâche bleue est abandonnée, les s i 1 prochaines instances de la tâche doivent être rouges. si une instance de tâche bleue s accomplit dans le respect de son échéance, la prochaine instance de la tâche reste bleue. les s i 1 premières instances de chaque tâche doivent être rouges. Ainsi, s 2 implique que, si une instance de tâche bleue a manqué son échéance alors, la prochaine occurrence de la même tâche doit être rouge. Lorsque s =, aucune perte n est autorisée. D une manière générale, en
7 7 autorisant les pertes, cela permet d ordonnancer des systèmes qui auraient été en surcharge autrement. A titre d illustration, nous pouvons considérer la figure 1 : : processing red instance : release time T 1 T 2 skip skip skip FIG. 1 Exemple de pertes sporadiques (s 1 = 3, s 2 = ) Le système est surchargé, mais les tâches peuvent être ordonnancées si T 1 perd une instance sur Conditions d ordonnançabilité Liu et Layland [8] ont montré qu un ensemble de n tâches périodiques (sans tolérance de pertes) est ordonnançable par EDF si et seulement si son facteur d utilisation du processeur est inférieur ou égal à 1 : 1 (1) Si l on considère maintenant le modèle Skip-over où l on tolère des pertes occasionnelles au niveau des tâches périodiques alors, le problème d ordonnançabilité de l ensemble des tâches est NP-difficile. Cependant, Koren et Shasha [7] ont montré que pour un ensemble Γ = {T i (p i, c i, s i )} de tâches périodiques autorisant des pertes, on obtient la condition nécessaire suivante pour l ordonnancement de Γ : n i=1 c i (s i 1) p i s i 1 (2) Dans ce cas, le facteur d utilisation du processeur n est plus calculé que sur la base des exécutions qui doivent avoir lieu. Une condition nécessaire et suffisante a été établie par Jeffay et Stone dans [6] énoncée par le théorème suivant : THEOREME 1 Un ensemble de tâches périodiques à contraintes strictes est ordonnançable par Earliest Deadline First (EDF) si et seulement si, pour tout intervalle L 0, L n L c i (3) p i i=1 Koren et Shasha se sont appuyés sur ces résultats pour prouver le théorème suivant relatif au modèle de tâches skip-over : THEOREME 2 Un ensemble de tâches périodiques à contraintes strictes tolérant des pertes sporadiques est ordonnançable si, pour tout intervalle L 0, L n i=1 D(i, [0, L]) où D(i, [0, L]) = ( L p i L p i s i )c i (4)
8 8 3.3 Les algorithmes d ordonnancement RTO (Red Tasks Only) Le premier algorithme est l algorithme Red Tasks Only (RTO). Cet algorithme rejette toujours les tâches bleues. Les tâches rouges sont ordonnancées suivant Earliest Deadline First (EDF). RTO "perd" des échéances selon un mode régulier, à savoir que la distance entre 2 pertes est exactement s périodes. Voici un exemple illustrant le fonctionnement de RTO (c i = 1, p i = 2, d i = 2, s i = 3) : : processing red instance : release time T i skip skip skip skip FIG. 2 Exemple de pertes sporadiques sous RTO BWP (Blue When Possible) Un autre algorithme plus flexible est l algorithme Blue When Possible (BWP) qui ordonnance des tâches bleues lorsque cela n empêche pas les tâches rouges de respecter leurs échéances. L algorithme évolue ainsi : ordonnancer les tâches rouges selon EDF. S il n y a aucune tâche rouge prête, alors activer une tâche bleue. S il y a plus d une tâche bleue prête alors en choisir une selon diverses heuristiques [7] : n importe laquelle, la tâche bleue dont l échéance est la plus éloignée, la tâche bleue dont l échéance est la plus proche, ajouter une tâche au hasard et regarder s il elle n introduit pas de surcharge, la tâche bleue ayant la propriété suivante : l échéance de la prochaine occurrence de sa tâche rouge associée est la plus proche. De même, illustrons l algorithme BWP sur un exemple (c i = 1, p i = 2, d i = 2, s i = 3) : : processing red instance : processing blue instance : release time T i skip skip skip FIG. 3 Exemple de pertes sporadiques sous BWP 4 L ordonnancement de tâches apériodiques avec le serveur EDL 4.1 Description du fonctionnement Le serveur Earliest Deadline as Late as possible (EDL) repose sur un algorithme d ordonnancement dynamique, capable d assurer la gestion de tâches apériodiques au sein d une application temps-réel. Il consiste à exécuter les
9 9 tâches périodiques au plus tôt lorsqu il n y a aucune activité apériodique. Dans le cas contraire, chaque fois qu une requête apériodique survient, toutes les tâches périodiques sont ordonnancées au plus tard, dans le respect de l ensemble des échéances des tâches. En d autres termes, l algorithme EDL tire profit de la laxité effective (c està-dire de l intervalle entre la date de fin d exécution et l échéance) des tâches périodiques, afin de minimiser le temps de réponse des apériodiques. Dans [3], Chetto et Chetto présentent une méthode simple pour déterminer la localisation et la durée des temps creux dans n importe quelle fenêtre d une séquence produite par EDL. La terminologie utilisée par les auteurs est la suivante : fy X représente la fonction de disponibilité définie vis à vis d un ensemble de tâche Y et d un algorithme d ordonnancement X, { fy X 1 si le processeur est inactif à t (t) = (5) 0 sinon Pour tous instants t 1 and t 2, l intégrale t t2 1 fy X (t)dt fournit le nombre total d unités de temps creux disponibles dans l intervalle de temps [t 1, t 2 ], désigné par Ω X Y (t 1, t 2 ). Il a été démontré [9] que le serveur EDL nécessite un calcul en-ligne des temps creux du processeur uniquement aux instants relatifs à l occurrence d une nouvelle tâche apériodique. La propriété fondamentale du serveur EDL est qu il garantit le maximum de temps creux dans un intervalle donné pour n importe quel ensemble de tâches. EDL a été démontré optimal [9]. THEOREME 3 Soit X un algorithme d ordonnancement préemptif quelconque. A tout instant t, Ω X T (0, t) Ω EDL T (0, t) (6) Un autre résultat significatif réside dans la complexité de l établissement de la séquence EDL. Le calcul enligne des temps creux [9] s effectue en O( R p n) où n désigne le nombre de tâches périodiques, R l échéance la plus éloignée parmi les tâches actives et p la plus petite période. 4.2 Détermination des temps creux en statique Le calcul de f EDL pour la localisation et la détermination de la durée des temps creux, repose sur deux vecteurs : le vecteur des échéances et le vecteur des temps creux. Le vecteur des échéances représente l ensemble des instants auxquels un temps creux est observable sur [0, P ], avec P = ppcm(p 1, p 2,..., p n ), l hyperpériode égale au plus petit commun multiple des périodes des tâches. Le vecteur des temps creux est utilisé pour consigner la durée des temps creux associés à ces différents instants Calcul du vecteur statique des échéances Considérons un ensemble de n tâches périodiques noté T = {T 1,..., T n } ordonnancées sur un système monoprocesseur. Chaque tâche T i = (c i, p i ) est caractérisée par une durée d exécution dans le pire cas c i et par une période p i. Le vecteur statique des échéances, noté K, représente l ensemble des instants considérés sur l hyperpériode [0, P ], précédant un temps creux. Il se construit à partir des échéances distinctes des tâches périodiques. En effet, le début de toute période de temps creux coïncide avec l échéance d une requête périodique [9]. avec k i < k i+1, k 0 = 0 et k q = P min {p i ; 1 i n} K = (k 0, k 1,..., k i, k i+1,..., k q ) (7) Calcul du vecteur statique des temps creux Ce vecteur traduit les longueurs des temps creux correspondant aux différents instants du vecteur des échéances. D = ( 0, 1,..., i, i+1,..., q ) (8)
10 10 où i représente la longueur du temps creux débutant au temps k i. D s obtient alors par la formule récurrente suivante : Illustration du calcul en statique de f EDL q = min {p i ; 1 i n} (9) i = sup (0, F i ), pour i = q 1 à 0 (10) n avec F i = (P k i ) P k q i c j k (11) p j j=1 k=i+1 Considérons l ensemble de tâches T = {T 1, T 2 } constitué de deux tâches périodiques T 1 (3, 10) et T 2 (3, 6). En appliquant les formules 9 et 10, on obtient le vecteur statique des échéances K = (0, 6, 10, 12, 18, 20, 24) et le vecteur statique des temps creux D = (3, 0, 0, 2, 0, 1, 0). Le calcul des intervalles de temps creux fournit la séquence EDL représentée sur la figure 4. : processing periodic task : processing idle time : release time T 1 T 2 f EDL k 0 k 1 k 2 k 3 k 4 k 5 k 6 FIG. 4 Calcul des temps creux en statique 4.3 Détermination des temps creux en dynamique On note τ le temps courant coïncidant avec l arrivée d une tâche apériodique Calcul du vecteur dynamique des échéances Le vecteur dynamique des échéances, noté K(τ), représente les instants supérieurs ou égaux à τ précédant un temps creux. Soit h l index tel que k h = sup {d; d K et d < τ} Calcul du vecteur dynamique des temps creux K(τ) = (τ, k h+1,..., k i,..., k q ) (12) Ce vecteur traduit les longueurs des temps creux associés aux instants du vecteur K. D(τ) = ( h (τ), h+1 (τ),..., i (τ),..., q (τ)) (13) avec h < i q représentant la longueur du temps creux débutant au temps k i. Chaque tâche périodique T j est caractérisée par ses paramètres statiques c j et p j, mais également par la quantité de processeur A j (τ) déjà allouée à son instance courante au temps τ, ainsi que par l échéance d j de sa requête courante au temps τ. On note M, la plus grande échéance parmi toutes les instances de tâches périodiques actives et l on figure dans le vecteur des temps creux l indice f tel que k f = min {k i ; k i > M}.
11 11 D(τ) est alors complètement défini par la relation de récurrence suivante : i (τ) = i, pour i = q à f (14) i (τ) = sup (0, F i (τ)), pour i = f 1 à h + 1 (15) n avec F i (τ) = (P k i ) P k n q i c j + k (τ) p j h (τ) = (P τ) n j=1 j=1 ( P τ p j Illustration du calcul en dynamique de f EDL c j A j (τ)) A j (τ) j=1 k=i+1 d j >k i q k=h+1 k (τ) (16) Nous pouvons à présent appliquer ces résultats à l ensemble T précédent. Cet ensemble de tâches périodiques est ordonnancé au plus tôt selon l algorithme EDF jusqu au temps τ = 5. On suppose qu une requête apériodique de durée 4 unités de temps survient au temps τ = 5, impliquant un calcul en-ligne des temps creux. Supposons que l on souhaite calculer le maximum de temps processeur libre dans l intervalle [5, 30] relativement à l ensemble T. A partir des formules 14, 15 et 16, on extrait le vecteur dynamique des échéances K(τ) = (5, 6, 10, 12, 18, 20, 24) ainsi que le vecteur dynamique des temps creux D(τ) = (3, 2, 0, 2, 0, 1, 0), comme l illustre la figure 5. : processing time : processing idle time : release time T 1 T 2 f EDL kτ k 1 k 2 k 3 k 4 k 5 k 6 FIG. 5 Calcul des temps creux en dynamique à l instant τ = 5 Dans cet exemple, les vecteurs dynamiques obtenus en exécutant les tâches périodiques au plus tard depuis l instant τ = 5, fournissent une réponse optimale vis à vis de la requête apériodique, à condition que celle-ci soit exécutée dans les temps creux de la séquence EDL établie à τ = 5. On peut observer sur la figure 6 que la requête apériodique reçoit bien 4 unités de temps (3 unités de temps dans le premier intervalle débutant à t = 5 et 1 unité de temps dans le second débutant à t = 12). 4.4 Cas de tâches apériodiques critiques Considérons à présent le problème de l acceptation de tâches apériodiques à contraintes strictes. On suppose que ces tâches sporadiques sont synchrones en ce sens que leur date d arrivée correspond avec leur date de réveil. Soit τ le temps courant coïncidant avec l arrivée d une requête sporadique R(τ, c, d), où c représente sa durée d exécution au pire cas et d son échéance. On suppose que le système peut présenter plusieurs tâches sporadiques à l état prêt au temps τ correspondant aux différentes requêtes précédemment acceptées. Par conséquent, celles-ci n ont pas terminé leur exécution à τ.
12 12 : processing time : release time T 1 T 2 EDL server FIG. 6 Exécution des apériodiques selon la séquence EDL calculée à τ = 5 On note R(τ) = {R i (c i (τ), d i ), i=1 à q(τ)} l ensemble des q tâches sporadiques présentes dans le système à τ. c i (τ) désigne la durée d exécution dynamique de R i (c est-à-dire sa durée d exécution restante) et d i son échéance. L ensemble R(τ) est ordonné tel que i < j implique d i d j. Dans [4], les auteurs proposent le test d acceptation optimal suivant pour des tâches apériodiques critiques gérées via le serveur EDL : THEOREME 4 R(τ, c, d) est acceptée si et seulement si pour toute tâche R i R(τ) {R} telle que d i d, on vérifie δ i (τ) 0, avec δ i (τ) défini comme suit : δ i (τ) = Ω EDL T (τ) (τ, d i) i c j (τ) (17) δ i (τ), appelée laxité de la tâche R i au temps τ, représente la longueur de l intervalle de temps qui sépare sa fin d exécution au plus tôt de son échéance. ΩT EDL (τ) (τ, d i) représente la somme totale des temps creux calculée entre τ et d i. La sommation i j=1 c j(τ) traduit la somme des exécutions restantes à l instant τ sur l ensemble des tâches sporadiques dont l échéance est inférieure ou égale à d i. 5 L ordonnancement de tâches apériodiques avec le serveur BG 5.1 Description du fonctionnement Le serveur de tâches apériodiques Background (BG) ordonnance les tâches apériodiques lorsqu il n y aucune activité périodique (c est-à-dire, lorsqu il n y a aucune tâche périodique à l état prêt) au sein du système. Le principal avantage de ce serveur réside dans sa simplicité de mise en oeuvre, en plus du fait qu il garantisse que les tâches apériodiques n affecteront pas le comportement des tâches périodiques. Par contre, l inconvénient majeur provient du fait que le temps de réponse aux requêtes apériodiques peut être très grand. j=1 Dans l exemple illlustratif de la figure 7, l ensemble T = {T 1 (10, 3), T 2 (6, 3)} est ordonnancé au plus tôt selon l algorithme Earliest Deadline First (EDF). Une requête apériodique R de durée 4 unités de temps, survient à l instant τ = 5. Le temps de réponse à la requête, via le service BG, s élève dans ce cas à 23 unités de temps. 5.2 Détermination des temps creux sous BG Le calcul de f EDS n est nécessaire que pour la gestion de l acceptation de tâches apériodiques critiques, où il est utile de connaître la séquence EDS, de manière à calculer la somme des temps creux sur un intervalle donné. Ceci n est pas le cas pour le serveur EDL dont le fonctionnement repose toujours sur le calcul des temps creux. La localisation et la détermination de la durée des temps creux sous BG repose sur deux vecteurs : le vecteur des
13 13 : processing time : release time T 1 T 2 BG server FIG. 7 Illustration du fonctionnement du serveur BG échéances et le vecteur des temps creux. Le vecteur des échéances représente l ensemble des instants auxquels se termine un temps creux sur [0, P ]. Le vecteur des temps creux est utilisé pour consigner la durée des temps creux précédant ces différents instants Calcul du vecteur des échéances Considérons un ensemble de n tâches périodiques noté T = {T 1,..., T n } ordonnancées sur un système monoprocesseur. Chaque tâche T i = (c i, p i ) est caractérisée par une durée d exécution dans le pire cas c i et par une période p i. Soit P = ppcm(p 1, p 2,..., p n ), l hyperpériode égale au plus petit commun multiple des périodes des tâches. Le vecteur statique des échéances, noté K, représente l ensemble des instants considérés sur l hyperpériode [0, P ], situés à la fin d un temps creux. Il se construit à partir des échéances distinctes des tâches périodiques. En effet, la fin de toute période de temps creux coïncide avec l échéance d une requête périodique [9]. avec k i < k i+1, k 0 = min {p i ; 1 i n} et k q = P Calcul du vecteur des temps creux K = (k 0, k 1,..., k i, k i+1,..., k q ) (18) Ce vecteur traduit les longueurs des temps creux qui précèdent les différents instants du vecteur des échéances. D = ( 0, 1,..., i, i+1,..., q ) (19) où i représente la longueur du temps creux qui précède le temps k i dans la séquence produite par EDS pour T sur [0, P ]. D s obtient alors par la formule récurrente suivante : i = sup (0, F i ), pour i = 1 à q (20) n avec F i = k i k q i c j k (21) p j j=1 k=i+1 Il est intéressant de remarquer que la séquence EDS en dynamique, est identique à celle calculée en statique puisque l activité apériodique n a aucune influence sur le comportement des tâches périodiques. Le calcul des temps creux sous BG via l établissement de la séquence EDS est par conséquent effectuée en O(N) où N représente le nombre total de requêtes distinctes sur [0, P ] Illustration du calcul de f EDS Considérons l ensemble de tâches T = {T 1, T 2 } constitué de deux tâches périodiques T 1 (3, 10) et T 2 (3, 6).
14 14 En appliquant la formule 20, on obtient le vecteur des échéances K = (6, 10, 12, 18, 20, 24, 30) et le vecteur des temps creux D = (0, 1, 0, 2, 0, 0, 3). Le calcul des intervalles de temps creux fournit la séquence EDS représentée sur la figure 8. A titre d exemple, la somme des temps creux sur l intervalle [12, 30], est égale à ΩT EDS (12)(12, 30) = 5. : processing periodic task : processing idle time : release time T 1 T 2 f EDS k 0 k 1 k 2 k 3 k 4 k 5 k 6 FIG. 8 Calcul des temps creux sous BG 5.3 Cas de tâches apériodiques critiques Considérons à présent le problème de l acceptation de tâches apériodiques à contraintes strictes. On suppose que ces tâches sporadiques sont synchrones en ce sens que leur date d arrivée correspond avec leur date de réveil. Soit τ le temps courant coïncidant avec l arrivée d une requête sporadique R(τ, c, d), où c représente sa durée d exécution au pire cas et d son échéance. On suppose que le système peut présenter plusieurs tâches sporadiques à l état prêt au temps τ correspondant aux différentes requêtes précédemment acceptées. Par conséquent, celles-ci n ont pas terminé leur exécution à τ. On note R(τ) = {R i (c i (τ), d i ), i=1 à q(τ)} l ensemble de tâches sporadiques présentes dans le système à τ. c i (τ) désigne la durée d exécution dynamique de R i (c est-à-dire sa durée d exécution restante) et d i son échéance. L ensemble R(τ) est ordonné tel que i < j implique d i d j. Dans [4], les auteurs proposent le test d acceptation optimal suivant pour des tâches apériodiques critiques, lorsque les tâches périodiques sont ordonnancées au plus tôt selon EDS : THEOREME 5 R(τ, c, d) est acceptée si et seulement si pour toute tâche R i R(τ) {R} telle que d i d, on vérifie δ i (τ) 0, avec δ i (τ) défini comme suit : δ i (τ) = Ω EDS T (τ) (τ, d i) i c j (τ) (22) δ i (τ), appelée laxité de la tâche R i au temps τ, représente la longueur de l intervalle de temps qui sépare sa fin d exécution au plus tôt de son échéance. ΩT EDS (τ) (τ, d i) représente la somme totale des temps creux calculée entre τ et d i. La sommation i j=1 c j(τ) traduit la somme des exécutions restantes à l instant τ sur l ensemble des tâches sporadiques dont l échéance est inférieure ou égale à d i. 6 Utilisation de EDL avec des tâches périodiques sous contraintes de QoS 6.1 EDL avec un modèle de tâches RTO Calcul du vecteur statique des échéances Soit l hyperpériode P = ppcm(s 1 p 1, s 2 p 2,..., s n p n ) définie sur un ensemble de tâches avec pertes. Le vecteur statique des échéances, noté K, représente l ensemble des instants considérés sur l hyperpériode [0, P ], précédant j=1
15 15 un temps creux. Il se construit à partir des échéances distinctes des instances périodiques rouges. La distance entre deux skips consécutifs est exactement de s i périodes dans lesquelles on observe m instances rouges suivies d une instance bleue avec m=(s i 1). Ces m instances rouges, considérées individuellement, sont donc périodiques de période s i.p i et leur échéance est égale à p i. Ainsi, pour chaque tâche T i, mp on observera sur [0, P ], s ip i échéances d instances rouges, 1 i n. Par conséquent, les instants k i du vecteur K = (k 0, k 1,..., k i, k i+1,..., k q ) sont définis comme suit : avec x = 0,..., ( P s ip i 1), et k = 1,..., m. et k i < k i+1, k 0 = min {p i ; 1 i n}, k q = P min {p i ; 1 i n} k i = (x.s i + k).p i (23) Preuve : Par définition du modèle RTO, chaque tâche T i de période p i et de paramètre de pertes s i, présente sur l intervalle [0, s ip i], (s i 1) requêtes d exécution d instances rouges suivies d une requête d exécution d instance bleue. Ainsi, les échéances sur requêtes rouges observées sur [0, s ip i] sont situées aux instants kp i avec 1 k (s i 1). Cette séquence de requêtes d exécution de (s i 1) instances rouges et d une instance bleue, est périodique de période s ip i. Par conséquent, pour chaque tâche T i, cette séquence RTO se répète fois sur [0, P ]. On en déduit alors que les échéances sur requêtes rouges sur [0, P ] sont situées aux instants xs ip i + kp i soit encore (xs i + k)p i, avec 1 k (s i 1) et 0 x 1. P s i p i P s i p i : processing red instance : processing blue instance : release time pi T i k 0 k 1 k m 1 kx k x+1 k 0 x+m 1 s ip i FIG. 9 Positionnement des instants k i(x, k) sous RTO Calcul du vecteur statique des temps creux Ce vecteur traduit les longueurs des temps creux correspondant aux différents instants du vecteur des échéances. D = ( 0, 1,..., i, i+1,..., q ) (24) où i représente la longueur du temps creux débutant au temps k i. D s obtient alors par la formule récurrente suivante, en tenant compte des pertes s j autorisées par chacune des tâches T j : q = min {p i ; 1 i n} (25) i = sup (0, F i ), pour i = q 1 à 0 (26) n avec F i = (P k i ) ( P k i P k q i )c j k (27) p j p j s j j=1 k=i+1
16 16 Preuve : Considérons pour chaque instant k i, 0 i q, la durée du temps creux qui lui est associée, notée i, pouvant être égale à zéro. Soit P = ppcm(s 1p 1,..., s ip i,..., s np n). Pour chaque tâche T i, la dernière instance observée sur [0, P ] est bleue. Par conséquent, puisque k q correspond à la dernière échéance rouge survenant sur [0, P ], q est donné par P k q aussi égal à min {p i; 1 i n}. Dans l intervalle [k i, P ], avec 0 i q, le nombre d échéances sur requêtes, rouges et bleues confondues, pour chaque tâche T j est égale à P k i p j. Si toutes ces requêtes ont terminé leur exécution sur [k i, P ], alors la durée totale du temps creux sur [k i, P ] est (P k i) n j=1 P k i p j c j. Dans le modèle RTO, chaque tâche T j tolère d écarter exactement une requête d exécution toutes les s j requêtes de la tâche. Les pertes totales par tâche sur [k i, P ] s élèvent alors à P k i p j s j c j. Ainsi, la durée totale du temps creux sur [k i, P ] en tenant compte des pertes est (P k i) n j=1 ( P k i P k i )c j. Comme la durée totale du temps creux sur [k i+1, P ] est donnée par p j p j s j q k=i+1 k, il vient que i = (P k i) n j=1 ( P k i p j Calcul du vecteur dynamique des échéances P k i p j s j )c j q k=i+1 k. Sinon, i = 0. Ce vecteur représente les instants supérieurs ou égaux à τ (le temps courant) précédant un temps creux. Soit h l index tel que k h = sup {d; d K et d < τ}. Comme dans le cas statique, tous les instants k i correspondent aux échéances distinctes des tâches rouges Calcul du vecteur dynamique des temps creux Ce vecteur traduit les longueurs des temps creux. K(τ) = (τ, k h+1,..., k i,..., k q ) (28) D(τ) = ( h (τ), h+1 (τ),..., i (τ),..., q (τ)) (29) avec h < i q représentant la longueur du temps creux débutant au temps k i. Par ailleurs, chaque tâche périodique T i est caractérisée par la quantité de processeur A i (τ) déjà allouée à son instance courante au temps τ. Cette instance possède également une échéance dynamique notée d i. On note M, la plus grande échéance parmi toutes les instances de tâches périodiques actives et l on figure dans le vecteur des temps creux l indice f tel que k f = min {k i ; k i > M}. D(τ) est alors complètement défini par la relation de récurrence suivante : i (τ) = i, pour i = q à f (30) i (τ) = sup (0, F i (τ)), pour i = f 1 à h + 1 (31) n avec F i (τ) = (P k i ) ( P k i P k n q i )c j + k (τ) p j p j s j h (τ) = (P τ) n j=1 j=1 ( P τ P τ )c j A j (τ)) p j p j.s j A j (τ) j=1 k=i+1 d j >k i q k=h+1 k (τ) (32) Preuve : Considérons l évaluation de la longueur du temps creux i(τ) suivant l instant k i, avec τ < k i k q, dans la séquence EDL établie en-ligne. Soit A j(τ) et d j respectivement la quantité de traitement effectuée sur la requête courante de T j et l échéance de cette requête. On définit alors M = sup {d j; T j T (τ)} comme la plus grande échéance parmi l ensemble T (τ) de toutes les instances de tâches actives à l instant τ. Etant donné que les tâches périodiques sont ordonnancées au plus tôt selon l algorithme EDF (Earliest Deadline First) jusqu à l instant τ, aucune requête apériodique possédant une échéance plus grande que M n a entamé son exécution à l instant τ. Par conséquent, la séquence EDL produite pour T (τ) sur [k f, P ], avec k f = min {k i; k i > M}, est identique à celle produite pour T hors-ligne. D où, i(τ) = i, pour i = q à f.
17 17 Si d j < k i, le temps total d exécution requis par la tâche T j sur [k i, P ], en tenant compte des pertes, est donné par ( P k i p j P k i p j s j )c j. Sinon, il est donné par ( P k i p j P k i p j s j )c j A j(τ) puisque la requête courante de T i a été partiellement exécutée. Par conséquent, la durée totale des temps creux sur [k i, P ] est donnée par (P k i) n j=1 ( P k i p j P k i p j s j )c j + n j=1 A j(τ). d j >k i En ce qui concerne la complexité algorithmique du calcul du vecteur des temps creux, on observe que la détermination des temps creux avec un modèle de tâches RTO est la même que celle observée avec un modèle de tâches classique, soit en O( R p n) où n désigne le nombre de tâches périodiques, R la plus grande échéance parmi les tâches actives et p la plus petite période Illustration du serveur EDL appliqué à un modèle de tâches RTO Considérons un ensemble T constitué de deux tâches périodiques T 1 (4, 10, 2) et T 2 (4, 6, 2). Ce système n est pas ordonnançable avec un ensemble de tâches périodiques définies selon le modèle classique, car le facteur d utilisation du processeur, n c i i=1 p i = dans ce cas, est strictement supérieur à 1. Par contre, le fait d autoriser des pertes au niveau des tâches nous permet d ordonnancer un système qui aurait été surchargé sans tolérance aux pertes. Ainsi, le facteur d utilisation des tâches en prenant en compte les pertes est de n c i(s i 1) i=1 p is i = , soit un facteur d utilisation du processeur inférieur à 1. On suppose à présent qu une requête apériodique de durée 5 unités de temps survient au temps τ = 12. Nous avons vu précédemment que les temps creux libérés grâce aux pertes introduites au niveau des tâches périodiques, pouvaient être exploitées pour exécuter des tâches supplémentaires et plus particulièrement pour ordonnancer des requêtes apériodiques. Ces tâches apériodiques sont alors exécutées au plus tôt, tandis que les activités périodiques sont reportées plus tard dans le temps, toujours dans le respect de leurs échéances. Les tâches dans cet exemple sont définies selon le modèle RTO. Le calcul hors-ligne des temps creux nous fournit le vecteur statique des échéances K = (0, 6, 10, 18) ainsi que le vecteur statique des temps creux D = (2, 0, 4, 4). La fonction f EDL associée à l ensemble de tâches T = {T 1, T 2 } est alors représentée sur la figure 10, illustrant la séquence EDL établie hors-ligne. : processing red instance : processing idle time : release time T 1 T 2 f EDL RT O k 0 k 1 k 2 k 3 FIG. 10 Séquence EDL-RTO établie au temps zéro A l arrivée de la requête apériodique au temps τ = 12, le calcul en-ligne des temps creux nous fournit le vecteur dynamique des échéances K(12) = (12, 18) et le vecteur dynamique des temps creux D(12) = (2, 4). La séquence effectivement exécutée est présentée figure 11. Le temps de réponse observé pour la tâche apériodique est de 9 unités de temps. Notons que ce temps de réponse est minimisé, à condition que la tâche apériodique soit exécutée dans les temps creux calculés par EDL à son arrivée. A partir de l instant t = 21, lorsqu il n y a plus de tâches apériodiques au sein du système, les tâches périodiques sont de nouveau ordonnancées au plus tôt selon l algorithme EDF.
18 18 : processing red instance : processing aperiodic request : release time T 1 T 2 EDL-RTO server kτ k 3 FIG. 11 Exécution de l apériodique selon la séquence EDL-RTO établie au temps zéro 6.2 EDL avec un modèle de tâches BWP Calcul du vecteur dynamique des échéances La différence ici vis à vis du modèle RTO, réside dans le fait qu à l instant t = τ, l ensemble des instances réveillées n est pas uniformément rouge. En effet, dans le modèle BWP, lorsqu il n y a aucune instance rouge à exécuter, l ordonnanceur tente d exécuter des instances bleues qui, par définition, peuvent être abandonnées à tout moment. De plus, si une instance bleue réussit, la prochaine instance de la tâche est encore bleue, introduisant un décalage par rapport à la séquence RTO d origine. Ce décalage dans le temps (move forward) à l instant τ est modélisé par un paramètre m i (τ) associé à la tâche T i, qui est incrémenté modulo s i, à chaque fois qu une instance bleue s accomplit dans le respect de son échéance. Par conséquent, les instants k i du vecteur K = (k 0, k 1,..., k i, k i+1,..., k q ) sont définis comme suit : avec x = 0,..., ( P s ip i 1), k = 1,..., m et 0 m i (τ) m. Remarque : pour x = ( P 1), les instants k s i.p i sont calculés modulo P. i k i = (x.s i + k + m i (τ)).p i (33) Preuve : Sans décalage au niveau de la séquence RTO, les échéances sur requêtes rouges observées sur [0, s ip i] sont situées aux instants kp i, avec 1 k (s i 1). Soit m i(τ) le décalage dans le temps à l instant τ associé à la tâche T i, avec 0 m i(τ) (s i 1). Chaque décalage dans la séquence des instances repousse les échéances de l ensemble des requêtes dans le temps d une quantité p i. Ainsi, les échéances sur requêtes rouges sur [0, s ip i] sont redéfinies aux instants kp i + m i(τ)p i. Par conséquent, si l on considère les et consécutives sur [0, P ], on obtient k i = (x.s i + k + m i(τ)).p i avec 0 x ( P s i.p i 0 m i(τ) (s i 1). P s i p i séquences RTO identiques 1), 1 k (s i 1) et Calcul du vecteur dynamique des temps creux Ce vecteur traduit les longueurs des temps creux. D(τ) = ( h (τ), h+1 (τ),..., i (τ),..., q (τ)) (34) avec h < i q représentant la longueur du temps creux débutant au temps k i. Par ailleurs, chaque tâche périodique T i est caractérisée par la quantité de processeur A i (τ) déjà allouée à son instance courante au temps τ. Cette instance possède également une échéance dynamique notée d i. On note M, la plus grande échéance parmi toutes les instances de tâches périodiques actives et l on figure dans le vecteur des temps creux l indice f tel que k f = min {k i ; k i > M}.
19 19 D(τ) est alors complètement défini par la relation de récurrence suivante : i (τ) = sup (0, F i (τ)), pour i = q à τ (35) n avec F i (τ) = (P k i ) ( P k i P k i + m j (τ)p j + m j(τ)p j )c j (36) p j p j s j p j s j + n j=1,d j >k i bleue reussie/rouge A j (τ) j=1 q k=i+1 k (τ) Preuve : La séquence BWP observée sur [k i, P ] est identique à la séquence RTO observée sur [k i m j(τ)p j, P m j(τ)p j], où l on tient compte du décalage m j(τ), 0 m j(τ) (s i 1), associée à la tâche T j. L évaluation des pertes sur cet intervalle correspond au nombre d instances bleues présentes dans la séquence RTO considérée sur [k i m j(τ)p j, P m j(τ)p j]. Cette quantité est égale au nombre de pertes observées sur l intervalle P (k i m j(τ)p j) auquel on soustrait le nombre de pertes observées sur l intervalle P (P m j(τ)p j). Les pertes totales par tâche sur [k i, P ] s élèvent alors à P (k i m j (τ)p j ) p j s j c j P (P m j (τ)p j ) c j, soit après simplifications ( P k i+m j (τ)p j p j s j m j (τ)p j p j s j )c j. Si d j < k i, le temps total d exécution requis par la tâche T j sur [k i, P ], en tenant compte des pertes, est donné par ( P k i p j P k i+m j (τ)p j p j s j + m j (τ)p j p j s j )c j. Sinon, il est donné par ( P k i p j p j s j P k i+m j (τ)p j p j s j + m j p j (τ) p j s j )c j A j(τ) puisque la requête courante de T i a été partiellement exécutée. La sommation des A j(τ) s effectue sur les instances rouges qui ont entamé ou terminé leur exécution à l instant τ, et uniquement sur les instances bleues qui ont terminé leur exécution à l instant τ. En effet, étant donné que ces instances bleues ont réussi leur exécution, les instances suivantes seront également bleues. Ainsi, ces instances bleues décalées à τ + p i sont considérées comme des instances rouges dans la séquence EDL simulée sur la base RTO à l instant τ. Par conséquent, la durée totale des temps creux sur [k i, P ] est donnée par : (P k i) n j=1 ( P k i p j P k i+m j (τ)p j p j s j + m j (τ)p j p j s j )c j + n j=1,d j >k i bleue reussie/rouge Illustration du serveur EDL appliqué à un modèle de tâches BWP A j(τ). Considérons à présent le même ensemble de tâches hybrides que celui utilisé précédemment pour illustrer le serveur EDL avec un modèle de tâches RTO (cf. section 6.1.5). Les temps creux sont calculés en-ligne selon le type des tâches périodiques actives, comme le montre la figure 12. : processing red instance : processing blue instance : processing idle time : release time T 1 T 2 f EDL BW P kτ k 2 FIG. 12 Séquence EDL-BWP établie à τ = 12 Dans le modèle BWP, on peut observer que la séquence produite pour T 1 est la même que celle établie dans le cas RTO alors que celle produite pour T 2 est décalée d une période du fait de l exécution réussie de l instance
20 20 bleue de T 2 au temps t = 12. Ainsi, les temps creux calculés en-ligne selon le modèle BWP sont représentés dans les deux vecteurs K(12) = (12, 24) et D(12) = (8, 2). L exécution de la requête apériodique dans les temps creux ainsi calculés est illustrée sur la figure 13. Les instances bleues de T 1 et T 2 respectivement réveillées aux temps t = 10 et t = 12, sont abandonnées au terme de leurs échéances. En effet, la requête apériodique s exécute pendant 5 unités de temps à partir de τ = 12 selon la séquence EDL établie par le calcul des vecteurs K(τ) et D(τ). Dans cette séquence EDL, les instances bleues, qui par définition peuvent être abandonnées à tout moment, représentent toujours de potentiels temps creux pouvant être exploiter dans le but de minimiser le temps de réponse aux requêtes apériodiques. A partir de l instant t = 17, lorsqu il n y a plus de tâches apériodiques au sein du système, les tâches périodiques sont de nouveau ordonnancées au plus tôt selon l algorithme EDF. On peut noter que les violations d échéances bleues survenant aux temps t = 18 et t = 20, impliquent obligatoirement des instances de type rouge pour les s i 1 instances suivantes, de manière à respecter les contraintes de QoS au niveau des tâches. : processing red instance : processing blue instance : processing aperiodic request : release time T 1 T 2 EDL-BWP server aborted 0 10 aborted kτ k 2 FIG. 13 Exécution de l apériodique selon la séquence EDL-BWP calculée à τ = Cas de tâches apériodiques critiques Considérons à présent le problème de l acceptation de tâches apériodiques à contraintes strictes dans un système comportant des tâches périodiques à pertes contraintes définies selon le modèle RTO ou BWP. On se place sous les mêmes conditions que pour l étude de l acceptation de tâches apériodiques critiques dans un système sans pertes (cf. section 4.4) Test d acceptation sous EDL avec un modèle RTO Le test d acceptation dans le cas de tâches avec pertes sous RTO s appuie sur celui énoncé précédemment (cf. Théorème 17) dans le cas de tâches sans pertes. THEOREME 6 R(τ, c, d) est acceptée si et seulement si pour toute tâche R i R(τ) {R} telle que d i d, on vérifie δ i (τ) 0, avec δ i (τ) défini comme suit : δ i (τ) = Ω EDL RT O T (τ) (τ, d i ) i c j (τ) (37) Dans ce cas, seule la somme des temps creux Ω EDL RT O T (τ) (τ, d i ) calculée entre τ et d i, diffère vis à vis du test d acceptation sous un modèle de tâches classique sans pertes. j=1
21 Test d acceptation sous EDL avec un modèle BWP De même, on obtient le test d acceptation suivant dans le cas d un modèle de tâches périodiques BWP : THEOREME 7 R(τ, c, d) est acceptée si et seulement si pour toute tâche R i R(τ) {R} telle que d i d, on vérifie δ i (τ) 0, avec δ i (τ) défini comme suit : δ i (τ) = Ω EDL BW P T (τ) (τ, d i ) i c j (τ) (38) 7 Utilisation de BG avec des tâches périodiques sous contraintes de QoS 7.1 BG avec un modèle de tâches RTO Illustration du serveur BG appliqué à un modèle de tâches RTO Le serveur de tâches apériodiques Background (BG) ordonnance les tâches apériodiques lorsqu il n y aucune activité périodique (c est-à-dire, lorsqu il n y a aucune tâche périodique à l état prêt) au sein du système. Dans le cas de tâches périodiques basées sur le modèle RTO, le serveur BG ordonnance les tâches apériodiques lorsqu il n y a aucune tâche rouge active dans le système. Considérons un ensemble T constitué de deux tâches périodiques T 1 (4, 10, 2) et T 2 (4, 6, 2). Ce système n est pas ordonnançable avec un ensemble de tâches périodiques définies selon le modèle classique, car le facteur d utilisation du processeur, n c i i=1 p i = dans ce cas, est strictement supérieur à 1. Par contre, le fait d autoriser des pertes au niveau des tâches nous permet d ordonnancer un système qui aurait été surchargé sans tolérance aux pertes. Ainsi, le facteur d utilisation des tâches en prenant en compte les pertes est de n c i(s i 1) i=1 p is i = , soit un facteur d utilisation du processeur inférieur à 1. On suppose à présent qu une requête apériodique de durée 5 unités de temps survient au temps τ = 12. Nous avons vu précédemment que les temps creux libérés grâce aux pertes introduites au niveau des tâches périodiques, pouvaient être exploitées pour exécuter des tâches supplémentaires et plus particulièrement pour ordonnancer des requêtes apériodiques. Les tâches dans cet exemple (cf. figure 14) sont définies selon le modèle RTO et sont toujours ordonnancées au plus tôt selon l agorithme EDF. Le temps de réponse observée pour la tâche apériodique est de 17 unités de temps. j=1 : processing red instance : processing aperiodic request : release time T 1 T 2 BG-RTO server FIG. 14 Exécution des apériodiques selon BG-RTO Détermination des temps creux sous BG avec un modèle RTO Le calcul de f EDS RT O n est nécessaire que pour la gestion de l acceptation de tâches apériodiques critiques, où il est utile de connaître la séquence EDS-RTO, de manière à calculer la somme des temps creux sur un intervalle donné. Ceci n est pas le cas pour le serveur EDL dont le fonctionnement repose toujours sur le calcul des temps temps creux.
22 22 Calcul du vecteur statique des échéances Soit l hyperpériode P = ppcm(s 1 p 1, s 2 p 2,..., s n p n ) définie sur un ensemble de tâches avec pertes. Le vecteur statique des échéances, noté K, représente l ensemble des instants considérés sur l hyperpériode [0, P ], qui marque la fin d un temps creux. Il se construit à partir des échéances distinctes des instances périodiques rouges et bleues confondues. Par conséquent, les instants k i du vecteur K = (k 0, k 1,..., k i, k i+1,..., k q ) sont définis comme suit : avec x = 1,..., ( P p i ) et k i < k i+1, k 0 = min {p i ; 1 i n}, k q = P k i = x.p i (39) Calcul du vecteur statique des temps creux différents instants du vecteur des échéances. Ce vecteur traduit les longueurs des temps creux qui précèdent les D = ( 0, 1,..., i, i+1,..., q ) (40) où i représente la longueur du temps creux précédant le temps k i. D s obtient alors par la formule récurrente suivante, en tenant compte des pertes s j autorisées par chacune des tâches T j : i = sup (0, F i ) pour i = 0 à q (41) n avec F i = k i ( k i sup (0, k i (s j 1)p j q ))c j k (42) p j p j s j j=1 k=i+1 Preuve : Pour une tâche T j, la durée d une séquence RTO est égale à une pseudo-période s jp j. Par définition du modèle RTO, chaque tâche T j présente sur chaque pseudo-période, (s j 1) requêtes d exécution rouges suivies d une requête d exécution bleue. La tâche T j présente donc une seule perte tous les s jp j pseudo-périodes. Par ailleurs, l instance bleue de la pseudo-période s jp j contenant l instant k i, ne doit être comptabilisée comme perte seulement dans le cas où l instant k i considéré, est strictement supérieur à la date de réveil de cette instance bleue, soit strictement supérieur à l instant (s j 1)p j relatif au début de la pseudo-période s jp j. Ainsi, le nombre total de pertes observées sur l intervalle [0, k i] s élève à k i (s j 1)p j p j s j. Dans le cas où l instant k i apparaît au cours de la première pseudo-période, le calcul (k i (s j 1)p j), pouvant induire induire un résultat négatif, on considérera dans le cas général la formulation sup (0, k i (s j 1)p j p j s j ). 7.2 BG avec un modèle de tâches BWP Illustration du serveur BG appliqué à un modèle de tâches BWP Dans le cas de tâches périodiques basées sur le modèle BWP, le serveur BG ordonnance les tâches apériodiques lorsqu il n y a aucune tâche rouge active dans le système. Quant aux instances de tâches bleues, pouvant être abandonnées à tout moment, celles-ci sont exécutées lorsqu il y a plus ni de tâches rouges ni de tâches apériodiques à l état prêt au sein du système. Considérons le même ensemble T = {T 1 (4, 10, 2), T 2 (4, 6, 2)} que précédemment. La figure 15 visualise les exécutions des différentes tâches. Les tâches rouges sont toujours ordonnancées au plus tôt selon l algorithme EDF, et leur comportement n est jamais perturbé par la présence des autres types de tâches, ce qui permet de garantir leurs exécutions. Le temps de réponse observé pour la tâche apériodique dans ce cas est de 5 unités de temps. L exécution de l instance de tâche bleue T 2 réveillée au temps t = 6 est tentée ici (contrairement au modèle BG- RTO). Cette instance réussit à s exécuter dans le respect de son échéance si bien que l instance suivante réveillée au temps t = 12 est encore bleue. Ainsi, lorsque la requête apériodique survient à τ = 12, elle bénéficie de cette instance bleue moins prioritaire pour s exécuter, ce qui n était pas le cas avec un modèle RTO (cf. section 7.1.1).
23 23 : processing red instance : processing blue instance : processing aperiodic request : release time T 1 T 2 BG-BWP server FIG. 15 Exécution des apériodiques selon BG-BWP Détermination des temps creux sous BG avec un modèle BWP Le calcul de f EDS BW P n est nécessaire que pour la gestion de l acceptation de tâches apériodiques critiques, où il est utile de connaître la séquence EDS-BWP, de manière à calculer la somme des temps creux sur un intervalle donné. Calcul du vecteur dynamique des échéances Ce vecteur représente les instants supérieurs ou égaux à τ (le temps courant) précédant un temps creux. Soit h l index tel que k h = sup {d; d K et d < τ}. Comme dans le cas statique, tous les instants k i correspondent aux échéances distinctes des tâches périodiques. K(τ) = (τ, k h+1,..., k i,..., k q ) (43) Calcul du vecteur dynamique des temps creux Ce vecteur traduit les longueurs des temps creux. D(τ) = ( h (τ), h+1 (τ),..., i (τ),..., q (τ)) (44) avec h < i q représentant la longueur du temps creux débutant au temps k i. On note M, la plus grande échéance parmi toutes les instances de tâches périodiques actives et l on figure dans le vecteur des temps creux l indice f tel que k f = min {k i ; k i > M}. D(τ) est alors complètement défini par la relation de récurrence suivante : i (τ) = sup (0, F i (τ)), pour i = τ à q (45) n avec F i (τ) = k i ( k i sup (0, k i + (1 m j (τ))p j ) + sup (0, (1 m j(τ))p j q ))c j k (τ) p j p j s j p j s j j=1 k=i+1 Preuve : La séquence BWP observée sur [0, k i] est identique à la séquence RTO observée sur [(s j m j(τ)) p j, k i + (s j m j(τ)) p j], où l on tient compte du décalage m j(τ), 0 m j(τ) (s i 1), associée à la tâche T j. L évaluation des pertes sur cet intervalle correspond au nombre d instances bleues présentes dans la séquence RTO considérée sur [(s j m j(τ))p j, k i + (s j m j(τ))p j]. Cette quantité est égale au nombre de pertes observées sur l intervalle k i + (s j m j(τ))p j auquel on soustrait le nombre de pertes observées sur l intervalle (s j m j(τ))p j. Les pertes totales par tâche sur [0, k i] s élèvent alors à sup (0, k i+(s j m j (τ))p j (s j 1)p j p j.s j )c j sup (0, (s j m j (τ))p j (s j 1)p j p j.s j 7.3 Cas de tâches apériodiques critiques )c j, soit après simplifications sup (0, k i+(1 m j (τ))p j p j s j ) sup (0, (1 m j (τ))p j p j s j )c j. Considérons à présent le problème de l acceptation de tâches apériodiques à contraintes strictes dans un système comportant des tâches périodiques à pertes contraintes définies selon le modèle RTO ou BWP. On se place
24 24 sous les mêmes conditions que pour l étude de l acceptation de tâches apériodiques critiques dans un système sans pertes (cf. section 5.3) Test d acceptation sous BG avec un modèle RTO Le test d acceptation dans le cas de tâches avec pertes sous RTO s appuie sur celui énoncé précédemment (cf. Théorème 22) dans le cas de tâches sans pertes. THEOREME 8 R(τ, c, d) est acceptée si et seulement si pour toute tâche R i R(τ) {R} telle que d i d, on vérifie δ i (τ) 0, avec δ i (τ) défini comme suit : δ i (τ) = Ω EDS RT O T (τ) (τ, d i ) i c j (τ) (46) Dans ce cas, seule la somme des temps creux Ω EDS RT O T (τ) (τ, d i ) calculée entre τ et d i sur la base d une séquence EDS, diffère vis à vis du test d acceptation sous un modèle de tâches classique sans pertes Test d acceptation sous BG avec un modèle BWP De même, on obtient le test d acceptation suivant dans le cas d un modèle de tâches périodiques BWP : THEOREME 9 R(τ, c, d) est acceptée si et seulement si pour toute tâche R i R(τ) {R} telle que d i d, on vérifie δ i (τ) 0, avec δ i (τ) défini comme suit : 8 Evaluation de performances δ i (τ) = Ω EDS BW P T (τ) (τ, d i ) 8.1 Contexte des simulations et critères usuels d évaluation Contexte des simulations j=1 i c j (τ) (47) Le programme de simulation a été écrit en langage C. Toutes les simulations reposent sur un ensemble de 5 tâches périodiques de périodes multiples entre elles, présentant des paramètres de pertes s i uniformes. Un générateur de tâches périodiques fournit différentes configurations de tâches selon la charge U p souhaitée par l utilisateur. Par ailleurs, un générateur de tâches apériodiques fournit des ensembles de tâches apériodiques dont les dates de réveils sont déterminés de façon aléatoire. Chaque ensemble est constitué de 5 tâches apériodiques, dont les durées d exécution sont fonction de la charge apériodique U s définie par l utilisateur. Le programme de simulation est en charge de l ordonnancement en-ligne de ces différentes configurations de tâches pour chacun des algorithmes d ordonnancement à comparer, ici, EDL-RTO, EDL-BWP, BG-RTO, et BG-BWP. j= Critères usuels d évaluation Le temps de réponse d exécution. Le temps de réponse représente la durée de l intervalle entre le réveil d une tâche et sa fin t réponse = date de fin d exécution - date de réveil (48)
25 25 Le taux de respect Le taux de respect représente la proportion de travaux des tâches qui respectent leurs contraintes temporelles. T respect = nombre d échéances satisfaites nombre de requêtes (49) Le taux d acceptation Le taux d acceptation est calculé en moyennant le rapport entre le nombre de tâches sporadiques acceptées (garanties) par le test d acceptation et le nombre de tâches sporadiques générées dans le configuration. T acceptation = nombre de tâches garanties nombre de tâches générées (50) La lateness La lateness des tâches représente l avance (lateness négative) ou bien le retard (lateness positive) de la tâche lorsqu elle termine son exécution vis à vis de son échéance. Lateness = date de fin d exécution - échéance (51) Le taux de preemption Le taux de preemption est défini comme la moyenne du rapport entre le nombre de preemptions et le nombre de requêtes traitées. T preemption = nombre de preemptions nombre de requêtes traitées (52) Nous nous proposons à présent de comparer les performances des 2 serveurs de tâches apériodiques BG et EDL utilisés avec des tâches périodiques à pertes contraintes, basées sur les modèles RTO et BWP. 8.2 Temps de réponse moyen aux requêtes apériodiques Dans cette section, nous présentons des résultats de simulation relatifs au temps de réponse moyen aux requêtes apériodiques non critiques. Nous rappelons brièvement le dispatching des différents types d instances pour les 2 serveurs BG et EDL. Utilisé avec le modèle RTO, le serveur BG ordonnance les requêtes apériodiques lorsqu il n y a aucune instance rouge à l état prêt. Utilisé avec le modèle BWP, le même schéma d ordonnancement est observé (les instances rouges sont ordonnancées, puis les requêtes apériodiques), et les instances bleues sont ordonnancées lorsqu il n y a ni rouges ni apériodiques à exécuter. Concernant, le serveur EDL, les instances bleues sont également les moins prioritaires vis à vis du dispatching des instances. Quant aux instances rouges et aux requêtes apériodiques, cellesci sont ordonnancées de façon conjointe selon les temps creux calculés par la séquence EDL. Les résultats présentés ci-après permettent d évaluer et de comparer la performance des 4 modèles que sont BG-RTO, BG-BWP, EDL-RTO et EDL-BWP, en termes de temps de réponse moyen aux requêtes apériodiques. Ce temps de réponse moyen est normalisé vis à vis de la durée d exécution de la requête occurrente.
26 Variation de la charge périodique En premier lieu, les performances des algorithmes sont étudiés en fonction de la charge périodique U p appliquée. Cette charge périodique est déterminée en ajustant les durées d exécution des tâches. Différentes configurations ont été simulées pour lesquelles, la charge apériodique est fixée (U s = 20%, U s = 40%, U s = 60% et U s = 80%) ainsi que le paramètre de pertes s i {2, 4, 6, 8, 10}. La charge périodique est incrémentée de 20% à 110%. Ainsi, même pour un s i grand (s i = 10), le système reste toujours ordonnançable puisque le facteur d utilisation du processeur est majoré pour U p = 110% par /10 = 0.99 ce qui reste inférieur à 1. Les résultats de simulation sont présentés en Annexe 1 (pages 35 à 64). Au vu de ces résultats, nous pouvons dire que globalement, le serveur EDL offre de meilleures performances que le serveur BG. De plus, nous pouvons noter que plus la charge périodique U p est élevée, plus l avantage observé du serveur EDL sur le serveur BG est important. Cependant, cet écart tend à diminuer lorsque la charge apériodique U s appliquée augmente. Nous remarquons également le fait que les 2 serveurs sont plus performants lorsqu ils sont utilisés avec le modèle de tâches à pertes contraintes BWP. Par ailleurs, nous observons que pour un faible taux de charge apériodique (U s = 20%), l activité périodique du système n a pas d effet influent sur le temps de réponse moyen aux requêtes apériodiques sous le serveur EDL et ce, tant que la charge globale du système ne dépasse pas 80%. Par contre, la présence de tâches périodiques dans le système a un impact significatif sur les résultats observés avec le serveur BG, si l on considère la même charge globale. Enfin, les variations au niveau du paramètre de pertes s i nous montrent que, pour une charge périodique élevée, le temps de réponse observé est d autant plus faible que la QoS observée au niveau des tâches périodiques est moindre (une petite valeur de s i autorisant davantage de pertes) Variation de la charge apériodique Les performances de 2 serveurs ont également été évaluées en fonction de la charge apériodique U s. Celleci est ajustée en faisant varier la durée d exécution des requêtes apériodiques. Différentes configurations ont été simulées pour lesquelles, la charge périodique est fixée (U p = 20%, U p = 40%, U p = 60% et U p = 80%). La charge périodique est incrémentée de 20% à 80%. D autre part, nous présentons les résultats obtenus pour des s i compris entre 2 et 10 de manière à montrer l influence du paramètre de pertes sur le temps de réponse des tâches apériodiques. Les résultats de simulation sont présentés en Annexe 2 (pages 39 à 42) Les simulations montrent que les performances de EDL et BG sont identiques à faible charge périodiques. Cependant, globalement, les courbes obtenues permettent, une nouvelle fois, de constater l efficacité du serveur EDL face au serveur BG. En effet, ce dernier permet de résoudre facilement le problème de la gestion des requêtes apériodiques. Les performance sont, en contrepartie, assez médiocres. Nous constatons de nouveau le gain de performance obtenu via l utilisation du modèle BWP. De plus, ces résultats confirment les précédents à savoir que les tâches périodiques n ont pas beaucoup d influence sur la performance du serveur EDL tant que la charge globale ne dépasse pas 80%. Le serveur BG, quant à lui, est toujours conditionné par la présence de tâches périodiques. Par ailleurs, nous observons l effet du paramètre de pertes s i sur la minimisation du temps de réponse aux requêtes apériodiques. En effet, nous pouvons dire qu il est intéressant d exploiter les temps creux libérés par les instances pouvant être abandonnées, dans le but d améliorer le temps de réponse des tâches apériodiques. Cette amélioration étant d autant plus significative que l on tolère un nombre important de pertes (c est-à-dire que la QoS des tâches périodiques est dégradée). 8.3 Influence du paramètre de pertes s i sur le temps de réponse des apériodiques Dans ce second groupe de simulation, notre intention a été identifier l impact du paramètre de pertes s i utilisé dans les algorithmes RTO et BWP, sur les performances du serveur EDL. Dans cette optique, nous avons établi un cadre de simulation dans lequel diverses configurations de tâches périodiques et apériodiques sont générées. Chaque configuration périodique est constituée d un ensemble de 5 tâches de périodes multiples entre elles, et de paramètres de pertes s i uniformes. Les variations du paramètre relatif à la durée d exécution des tâches permettent
27 27 d ajuster la charge périodique globale. De même, un générateur de tâches apériodiques fournit un ensemble de requêtes apériodiques dont les dates de réveils sont calculées de façon aléatoire. Là encore, l ajustement de la charge apériodique s effectue en faisant varier les durées d exécution relatives aux différentes requêtes apériodiques Variation de la charge périodique Les mesures effectuées en simulation concernent le modèle EDL-RTO. Des résultats similaires étant observables pour le modèle EDL-BWP, avec un temps de réponse moyen évoluant dans le même sens, mais observé légèrement plus faible. Ces simulations nous permettent d évaluer l influence du paramètre de pertes s i sur le temps de réponse moyen aux requêtes apériodiques. La charge périodique U p a été établie entre 20% à 110%, tandis que plusieurs lots de simulation ont été considérés correspondant à 4 taux de charge apériodique différents : 20%, 40%, 60% et 80%. La figure 27 de l annexe 3 (page 43) présente les résultats de simulation obtenus en termes de temps de réponse aux requêtes apériodiques. Les courbes nous montrent que le temps de réponse moyen aux requêtes apériodiques est sensible à la valeur appliquée au paramètre de pertes s i, dès lors que la charge globale du système (périodiques + apériodiques) dépasse 100% (cas de surcharge du point de vue du modèle de tâches périodiques sans pertes). En effet, plus le taux de pertes des tâches périodiques est élevé (c est-à-dire, plus le s i est petit), meilleur est le temps de réponse aux tâches apériodiques. Ceci est observé globalement quelque soit la charge apériodique du système. Cependant, nous pouvons remarquer que le gain obtenu par les pertes autorisées est d autant plus grand que la charge apériodique du système est importante. Par ailleurs, il convient de noter que cet écart de performance entre les courbes des différents s i est d autant plus sensible que le taux de charge périodique est élevé Variation de la charge apériodique L influence du paramètres de pertes s i a également été évaluée en fonction de la charge périodique, celle-ci variant de 20% à 100%. Les courbes générées sur la figure 28 de l annexe 3 (page 44) reflètent le temps de réponse moyen aux requêtes apériodiques selon 4 taux de charge périodique différents : 20%, 40%, 60% et 80%. Les résultats obtenus confirment les résultats précédents à savoir que les pertes autorisées au niveau des tâches périodiques influent significativement sur le temps de réponse observé au niveau des tâches apériodiques. Ce dernier est d autant plus faible que le s i est petit. Là encore, nous remarquons que lorsque la charge périodique augmente, le bénéfice apporté par une plus grande tolérance aux pertes, est plus important. De plus, cet avantage en termes de temps de réponse est d autant plus significatif que la charge apériodique du système est élevée. Notons néanmoins que les différences de performance observées pour les différents s i n existent que pour des charges globales (périodiques + apériodiques) supérieures à 100%, donc lorsque le système (considéré sans pertes) est en cas de surcharge. 8.4 Taux de respect des tâches périodiques Nous avons vu que les 2 algorithmes EDL-RTO et EDL-BWP offraient des performances assez comparables au niveau du temps de réponse aux requêtes apériodiques, avec un léger avantage pour le modèle EDL-BWP. Nous nous intéressons à présent à l évaluation de la QoS observée au niveau des tâches périodiques pour les 2 modèles EDL-RTO et EDL-BWP. Dans ce sens, les mesures mises en oeuvre concernent le taux de respect des tâches périodiques, c est-à-dire le ratio du nombre de tâches s exécutant dans le respect de leurs échéances sur le nombre total de requêtes périodiques. Ce critère est successivement mesuré lorsque la charge périodique et la charge apériodique varient de manière indépendante. Le taux de respect des tâches périodiques est donc d une part évalué lorsque le taux de charge périodique évolue entre 20% et 110% alors que le taux de charge apériodique reste constant. D autre part, des mesures symétriques sont effectuées pour lesquelles le taux de charge apériodique varie entre 5% et 80%, à taux de charge périodique fixe. Les résultats obtenus pour les modèles EDL-RTO et EDL-BWP sont présentés en Annexe 4 (pages 45 et 46 respectivement) Les différentes courbes font apparaître le fait que le modèle EDL-BWP fournit de bien meilleures performances en termes de QoS au niveau des tâches périodiques, que le modèle EDL-RTO. EDL-RTO permet de résoudre
28 28 facilement le problème du calcul des temps creux, avec une complexité calculatoire assez faible (cf. section 6.1). En contrepartie, on observe une QoS constante, directement fonction du paramètre de pertes s i associé aux tâches périodiques et ce, quel que soit le taux de charge périodique ou apériodique du système. En ce qui concerne le modèle EDL-BWP, celui-ci requiert un calcul plus élaboré pour la gestion des requêtes apériodiques (cf. section 6.2) mais fournit des résultats beaucoup plus intéressants. Globalement, l observation des différents graphes nous amène à conclure que EDL-BWP est d autant plus performant vis à vis de EDL-RTO que la charge globale est faible. Pour un taux de charge global élevé, les performances de EDL-BWP tendent à rejoindre celles de EDL-RTO. En effet, les simulations relatives à EDL-BWP avec si = 2 et si = 6 montrent que la QoS relevée reste supérieure à celle du modèle EDL-RTO tant que la charge globale ne dépasse pas 160% et 110% respectivement. Par ailleurs, nous pouvons dire que cet avantage de EDL-BWP sur EDL-RTO est d autant plus important que les pertes tolérées sont importantes (s i petit). A titre d illustration, la QoS observée pour EDL-BWP avec un s i = 2 alors que U s = 0.20 est de le double de celle observée avec EDL-RTO sous les mêmes conditions, tant que le taux de charge périodique U p reste inférieur à 75%. 8.5 Taux d acceptation des requêtes apériodiques critiques Dans cette section, nous cherchons à évaluer le taux d acceptation des requêtes apériodiques critiques, c està-dire le nombre de tâches sporadiques dont l exécution est garantie sur le nombre total de requêtes occurrentes. Dans le modèle RTO, le but à atteindre est l exécution de toutes les tâches périodiques rouges et du maximum de tâches sporadiques avant leurs échéances. Dans le modèle BWP, cet objectif est assujetti à l exécution d un maximum de tâches périodiques bleues. Dans le cas du serveur EDL, le test d acceptation repose sur les temps creux calculés selon la séquence d exécution au plus tard des tâches périodiques ainsi que sur la somme des exécutions restantes des tâches sporadiques précédemment acceptées dans le système (cf. section 6.3). En ce qui concerne le serveur BG, le test d acceptation tient également compte de la présence des tâches sporadiques dans le système, mais les temps creux sont calculés cette fois-ci selon la séquence d exécution au plus tôt des tâches périodiques (cf. section 7.3). Nous nous proposons donc d évaluer les 4 modèles BG-RTO, BG-BWP, EDL-RTO et EDL-BWP au niveau du taux de garantie offert au niveau des tâches sporadiques. Ce critère est évalué successivement en fonction du taux charge périodique et apériodique appliqué Variation de la charge périodique Tout d abord, le taux d acceptation est mesuré en fonction de la charge périodique du système, celle-ci variant de 20% à 110%. Dans le même temps, la charge apériodique est successivement fixée aux valeurs 20%, 40%, 60% et 80%. De plus, pour chaque lot de simulation, différentes courbes sont présentées selon la valeur de pertes s i autorisées au niveau des tâches périodiques. Les résultats de simulation sont décrits en Annexe 5 (pages 47 à 50). Les simulations montrent que les performances de EDL-RTO et EDL-BWP sont pratiquement identiques et ce, quelle que soit la charge globale appliquée au système. Les courbes du taux d acceptation pour BG-RTO et BG- BWP permettent, une nouvelle fois, de constater l efficacité du serveur EDL face aux techniques simples de gestion des tâches sporadiques. Elles font notamment apparaître les performances assez médiocres du modèle rigide BG- RTO. Par ailleurs, il est à noter que l avantage du serveur EDL sur le serveur BG est d autant plus important que le taux de charge apériodique est élevé. A faibles charges périodiques cependant, le modèle BG-BWP offre des résultats assez proches de ceux obtenus avec le serveur EDL Variation de la charge apériodique Les performances au niveau des garanties des tâches sporadiques ont également été évaluées en fonction de la charge apériodique U s. Différentes configurations ont été simulées pour lesquelles, la charge périodique est fixée (U p = 20%, U p = 40%, U p = 60% et U p = 80%). La charge périodique est incrémentée de 20% à 80%. Les résultats de simulation, pour des s i différents, sont présentés en Annexe 6 (pages 51 à 54). Globalement, les simulations montrent que les performances de EDL-RTO, EDL-BWP et BG-BWP sont identiques à faibles charges périodiques. Toutes charges confondues, EDL-RTO accepte peu de requêtes sporadiques
29 29 comparé aux 3 modèles précédents. Par ailleurs, les courbes obtenues confirment le fait que les deux versions de EDL offrent des performances tout à fait comparables. Enfin, on peut de nouveau remarquer que, plus la charge périodique augmente, plus le gain de performance du serveur EDL sur le serveur BG est important. 8.6 Influence du paramètre de pertes s i sur le taux d acceptation des apériodiques L objectif de cette partie est de mettre en avant l impact direct de la valeur du paramètre s i sur le taux d acceptation des requêtes sporadiques, sous le serveur EDL. Ces simulations ont été effectuées avec le modèle EDL-RTO (le modèle EDL-BWP offrant les quasiment les mêmes résultats en termes de garantie des tâches sporadiques comme nous l avons vu précédemment). Le cadre de simulation comporte diverses configurations périodiques constituées de 5 tâches de paramètres de pertes s i uniformes. ainsi que plusieurs ensembles de requêtes apériodiques dont les dates de réveils sont calculées de façon aléatoire Variation de la charge périodique La charge périodique U p a été établie entre 20% à 110%, tandis que plusieurs lots de simulation ont été considérés correspondant à 4 taux de charge apériodique différents : 20%, 40%, 60% et 80%. La figure 39 de l annexe 7 (page 55) présente les résultats de simulation obtenus en termes de taux d acceptation des requêtes apériodiques. Les courbes nous montrent que le taux d acceptation des requêtes apériodiques est sensible à la valeur appliquée au paramètre de pertes s i, dès lors que la charge globale du système (périodiques + apériodiques) dépasse 100% (cas de surcharge du point de vue du modèle de tâches périodiques sans pertes). En effet, plus le taux de pertes des tâches périodiques est élevé (c est-à-dire, plus le s i est petit), meilleur est le taux d acceptation des tâches apériodiques. Ceci est observé globalement quelque soit la charge apériodique du système. Cependant, nous pouvons remarquer que le gain obtenu par les pertes autorisées est d autant plus grand que la charge apériodique du système est importante Variation de la charge apériodique L influence du paramètres de pertes s i a également été évaluée en fonction de la charge périodique, celle-ci variant de 20% à 80%. Les courbes générées sur la figure 40 de l annexe 7 (page 56) reflètent le taux d acceptation des requêtes apériodiques selon 4 taux de charge périodique différents : 20%, 40%, 60% et 80%. Les résultats obtenus confirment les résultats précédents à savoir que les pertes autorisées au niveau des tâches périodiques influent significativement sur le nombre de requêtes sporadiques acceptées. Ce dernier est d autant plus élevé que le s i est petit. Là encore, nous remarquons que lorsque la charge périodique augmente, le bénéfice apporté par une plus grande tolérance aux pertes, est plus important. De plus, cet avantage en termes de taux d acceptation est d autant plus significatif que la charge apériodique du système est élevée. Notons néanmoins que les différences de performance observées pour les différents s i n existent que pour des charges globales (périodiques + apériodiques) supérieures à 100%, donc lorsque le système (considéré sans pertes) est en cas de surcharge. 8.7 Lateness des tâches Nous avons effectué des mesures concernant la lateness (retard) des tâches. Cette évaluation fournit une mesure relative de l écart entre la date de terminaison de la tâche et sa date d échéance. Ce critère est négatif lorsque la tâche respecte son échéance. Lors de nos simulations, tous les algorithmes ont été évalués avec test d acceptation des requêtes apériodiques. Ainsi, la lateness moyenne observée au niveau des tâches (périodiques et apériodiques confondues) se doit d être toujours négative, afin de valider le bon fonctionnement des tests d acceptation relatifs aux différents algorithmes d ordonnancement. Les lots de simulation effectués à taux de charge apériodique constant (U s = 20%, U s = 40%, U s = 60% et U s = 80%) sont fonction du taux de charge périodique U p, variant de 20% à 110%. Pour chaque lot de simulation, la lateness des tâches est mesurée pour des paramètres de pertes s i uniformes pour toutes les tâches périodiques, avec s i {2, 4, 6, 8, 10}. Les résultats de simulation sont présentés en Annexe 8 (page 57). Les résultats obtenus pour les différentes configurations étudiées nous montrent que la lateness moyenne des tâches croît de manière non linéaire en fonction de la charge périodique appliquée, tout en restant constamment
30 30 négative. On vérifie ainsi le fait que le test d acceptation garantit le respect de toutes les échéances des tâches périodiques et apériodiques acceptées au sein du système. Les simulations montrent également que BG-RTO, BG- BWP, EDL-RTO et EDL-BWP offrent globalement les mêmes performances pour un taux de charge apériodique faible (U s = 20%). Cependant, pour des taux de charge apériodiques plus élevés, on remarque que le serveur BG fournit une lateness moyenne plus importante en valeur absolue que celle observée pour le serveur EDL. Ce phénomène s explique par le fait que BG ordonnance toujours les tâches périodiques au plus tôt, maximisant ainsi la lateness moyenne des tâches périodiques. Dans le cas du serveur EDL, les tâches périodiques peuvent être amenées à être exécutées au plus tard lorsque des requêtes apériodiques se présentent. Aussi, si le serveur EDL minimise le temps de réponse aux apériodiques, en contrepartie, il contribue à augmenter la lateness moyenne des tâches périodiques. Notons que cet écart de performance de BG vis à vis de EDL est d autant plus important que la charge apériodique appliquée et le paramètres de pertes s i sont élevés. En effet, de faibles pertes autorisées multiplient le nombre d instances périodiques observées sur lesquelles s appuie le calcul de la lateness moyenne (le nombre d instances périodiques observées sur l intervalle de simulation étant beaucoup plus élevée que le nombre de requêtes apériodiques considérées sur le même intervalle). Au niveau des deux modèles à pertes utilisés, les simulations montrent que BG-RTO offrent de meilleurs résultats que BG-BWP. Ceci se justifie tout à fait puisque l exécution des instances bleues dans un système d ordonnancement BWP va tendre à augmenter la lateness moyenne des tâches périodiques. On remarque que cet avantage de RTO sur BWP tend à diminuer lorsque le taux de charge périodique ainsi que le paramètre de pertes s i augmentent. Utilisé avec EDL, le modèle BWP prévaut à son tour sur le modèle RTO. La raison invoquée peut alors être la suivante : sur l occurrence d une requête apériodique, la séquence EDL-RTO va exécuter toutes instances rouges au plus tard, contribuant ainsi à l augmentation de la lateness moyenne des tâches périodiques. Dans le cas du calcul de la séquence EDL-BWP, la différence réside dans le fait que sur l occurrence d une requête apériodique, des instances bleues peuvent être présentes. Ces dernières sont alors totalement abandonnées et le début de la séquence EDL compte moins d instances rouges exécutées au plus tard, donc une lateness moyenne plus élevée pour les tâches périodiques. 8.8 Taux de preemption des tâches Il s est avéré intéressant de comparer le nombre de préemptions engendrées par les différents algorithmes, de manière à évaluer correctement les surcoûts temporels relatifs à leur exécution. Différentes configurations ont été simulées à taux de charge apériodiques constants (U s = 20%, U s = 40%, U s = 60% et U s = 80%) et avec une charge périodique variable (20% U p 110%). Les modèles d ordonnancement évalués (BG-RTO, BG-BWP, EDL-RTO et EDL-BWP) mettent tous en oeuvre un test d acceptation des requêtes apériodiques. L annexe 9 (page 61) présente les résultats de simulation obtenus en termes de taux moyen de preemption de l ensemble des tâches (périodiques et apériodiques). Toutes les courbes obtenues affichent un taux de preemption des tâches qui croît de manière non linéaire en fonction de la charge périodique appliquée pour atteindre une valeur maximale lorsque la charge totale appliquée au système (considérée sans pertes) atteint 100%. On remarque que globalement, BG-RTO et EDL-RTO induisent moins de premptions que BG-BWP et EDL-BWP. En effet, l exécution des instances bleues dans un système d ordonnancement BWP va tendre à augmenter le nombre moyen de preemptions des tâches périodiques. Notons de plus que cet écart entre les 2 types d algorithmes Skip-Over est d autant plus important que les pertes autorisées au niveau des tâches périodiques sont élevées (faible valeur pour s i ). Par ailleurs, pour de faibles pertes autorisées (s i 8), les résultats mettent en avant le fait que le taux de preemption moyen maximal observé pour le serveur BG est assez peu sensible à la charge apériodique U s appliquée. Dans les mêmes conditions, le serveur EDL offre un taux de préemption moyen maximal qui tend, quant à lui, à décroître lorsque la charge apériodique appliquée augmente, offrant par là-même un taux de preemption moyen plus faible que celui de BG dès lors que U s En résumé, nous pouvons dire que les différences observées au niveau des taux moyens de préemption des tâches entre le serveur BG et le serveur EDL sont d autant moins significatives que la charge apériodique au sein du système est importante d une part, et que les pertes autorisées sont faibles d autre part.
31 31 9 Synthèse Le but des simulations précédentes a été de nous permettre une classification en termes de performance des différentes stratégies d ordonnancement étudiées au cours de ce travail, à savoir BG-RTO, BG-BWP, EDL-RTO et EDL-BWP. Nous résumons ici l efficacité de chacun d entre eux en fonction de leur complexité calculatoire. En premier lieu, la figure 16 montre l efficacité des algorithmes en termes de minimisation du temps de réponse moyen aux requêtes apériodiques. FIG. 16 Efficacité des algorithmes vis à vis du temps de réponse moyen aux apériodiques On constate que le serveur BG-RTO ne permet pas d obtenir de bons résultats en termes de temps de réponse aux requêtes apériodiques. Le modèle BWP améliore cependant les performances obtenues avec ce type de serveur. Le serveur EDL-RTO offre un bon compromis efficacité / simplicité. Quant au modèle EDL-BWP, il induit une complexité calculatoire plus importante que EDL-RTO, qui ne justifie pas assez le gain de performance peu significatif obtenu ici vis à vis du critère de minimisation du temps de réponse moyen aux requêtes apériodiques. Considérons à présent l efficacité des algorithmes au niveau du nombres moyen d échéances satisfaites pour les tâches périodiques (cf. figure 17). FIG. 17 Efficacité des algorithmes vis à vis du taux de respect des périodiques On remarque que les modèles s appuyant sur RTO fournissent des performances assez médiocres comparées aux modèles basés sur BWP. Ce défaut prend de l ampleur lorsque les pertes autorisées au niveau des tâches périodiques croissent. Notons par ailleurs que les serveurs BG et EDL offrent des performances identiques pour chacun des modèles Skip-Over considérés séparément. Il est cependant intéressant de noter que EDL-BWP garantit
32 32 un taux de respect des tâches beaucoup plus important que EDL-RTO. Dans ce cas, le gain de performances compense largement la complexité plus élevée de EDL-BWP. Par ailleurs, la figure 18 met en valeur l efficacité des algorithmes en termes de taux d acceptation des requêtes sporadiques. On peut vérifier ici que l efficacité des algorithmes est directement fonction de leur complexité. Notons toutefois que les performances des algorithmes EDL-RTO et EDL-BWP ne se distinguent pas de façon significative. FIG. 18 Efficacité des algorithmes vis à vis du taux de preemption des tâches Enfin, nous avons pu évaluer lors des simulations le nombre de moyen de préemptions engendrés par les différents algorithmes. L efficacité de ceux-ci en termes de préemptions dépend fortement des conditions d utilisation des algorithmes. On retiendra cependant que les modèles basés sur RTO sont ceux qui induisent le moins de préemptions lorsque les pertes au niveau des tâches périodiques sont importantes (s i 6) et ce, quelle que soit la charge appliquée au système. On remarquera également que BG-RTO présente parfois jusqu à 2 fois moins de préemptions de EDL-RTO pour des charges globales du système élevées. Lorsque les pertes deviennent moins importantes (s i > 6), l écart de performance en termes du nombre de préemptions engendrées par les différents algorithmes étudiés tend à diminuer. 10 Conclusion Les résultats présentés dans ce rapport proposent une solution au problème de l ordonnancement dynamique d ensembles de tâches hybrides définies sous des contraintes de qualité de service. Le travail effectué s inscrit dans une perspective de gestion des cas de surcharge dans les systèmes centralisés monoprocesseur. Cette recherche vise à répondre aux besoins des nouvelles applications temps-réel dans les domaines du multimédia et du contrôle automatique, pour lesquelles l ordonnancement temps-réel à contraintes strictes semble trop restrictif. Dans ce contexte, nous avons présenté les résultats théoriques de deux algorithmes, EDL-RTO et EDL-BWP, issus de la fusion de deux approches existantes que sont le modèle à pertes contraintes Skip-Over et le serveur de tâches apériodiques EDL. L objectif poursuivi consistait à fournir un modèle d ordonnancement flexible visant à minimiser le temps de réponse des requêtes apériodiques en tirant profit des pertes autorisées au niveau des tâches périodiques. L approche avec test d acceptation de requêtes sporadiques critiques a également été étudiée. Nous avons mis en oeuvre des simulations dans le but d évaluer le comportement des différents algorithmes. Celles-ci ont permis de comparer les performances de ces algorithmes suivant les critères d efficacité classiques comme le temps de réponse aux requêtes apériodiques, le taux d échéances satisfaites, le taux de preemption, etc. Ces simulations ont notamment confirmé le très bon comportement des algorithmes EDL-RTO et EDL-BWP en termes de temps de réponse aux requêtes apériodiques.
33 33 11 Perspectives Ce document traitant uniquement de l ordonnancement centralisé monoprocesseur sous des contraintes de QoS, les travaux futurs vont s orienter vers la conception d ordonnanceurs multiprocesseurs répondant aux mêmes besoins. En effet, ceux-ci sont de plus en plus employés dans un grand nombre d applications de traitement informatique, non seulement dans le domaine du traitement d information, mais également pour le contrôle de robots et la simulation temps réel de systèmes dynamiques, du fait qu ils procurent une excellente efficacité de coût.
34 34 12 Annexes
35 35 Annexe 1 Temps de réponse moyen aux requêtes apériodiques en fonction de Up FIG. 19 Temps de réponse moyen aux requêtes apériodiques (U s = 20%)
36 36 FIG. 20 Temps de réponse moyen aux requêtes apériodiques (U s = 40%)
37 FIG. 21 Temps de réponse moyen aux requêtes apériodiques (U s = 60%) 37
38 38 FIG. 22 Temps de réponse moyen aux requêtes apériodiques (U s = 80%)
39 39 Annexe 2 Temps de réponse moyen aux requêtes apériodiques en fonction de Us FIG. 23 Temps de réponse moyen aux requêtes apériodiques (U p = 20%)
40 40 FIG. 24 Temps de réponse moyen aux requêtes apériodiques (U p = 40%)
41 FIG. 25 Temps de réponse moyen aux requêtes apériodiques (U p = 60%) 41
42 42 FIG. 26 Temps de réponse moyen aux requêtes apériodiques (U p = 80%)
43 43 Annexe 3 Influence du paramètre de pertes s i sur le temps de réponse aux apériodiques sous EDL-RTO FIG. 27 Temps de réponse moyen aux requêtes apériodiques en fonction de U p pour différents s i
44 44 FIG. 28 Temps de réponse moyen aux requêtes apériodiques en fonction de U s pour différents s i
45 45 Annexe 4 Taux de respect des tâches périodiques FIG. 29 Taux de respect des tâches périodiques sous EDL-RTO
46 46 FIG. 30 Taux de respect des tâches périodiques sous EDL-BWP
47 47 Annexe 5 Taux d acceptation des requêtes apériodiques en fonction de Up FIG. 31 Taux d acceptation des requêtes apériodiques (U s = 20%)
48 48 FIG. 32 Taux d acceptation des requêtes apériodiques (U s = 40%)
49 FIG. 33 Taux d acceptation des requêtes apériodiques (U s = 60%) 49
50 50 FIG. 34 Taux d acceptation des requêtes apériodiques (U s = 80%)
51 51 Annexe 6 Taux d acceptation des requêtes apériodiques en fonction de Us FIG. 35 Taux d acceptation des requêtes apériodiques (U p = 20%)
52 52 FIG. 36 Taux d acceptation des requêtes apériodiques (U p = 40%)
53 FIG. 37 Taux d acceptation des requêtes apériodiques (U p = 60%) 53
54 54 FIG. 38 Taux d acceptation des requêtes apériodiques (U p = 80%)
55 55 Annexe 7 Influence du paramètre de pertes s i sur le taux d acceptation des apériodiques sous EDL-RTO FIG. 39 Taux d acceptation des requêtes apériodiques en fonction de U p pour différents s i
56 56 FIG. 40 Taux d acceptation des requêtes apériodiques en fonction de U s pour différents s i
57 57 Annexe 8 Lateness moyenne des tâches en fonction de Up FIG. 41 Lateness moyenne des tâches (U s = 20%)
58 58 FIG. 42 Lateness moyenne des tâches (U s = 40%)
59 FIG. 43 Lateness moyenne des tâches (U s = 60%) 59
60 60 FIG. 44 Lateness moyenne des tâches (U s = 80%)
61 61 Annexe 9 Taux moyen de preemption des tâches en fonction de Up FIG. 45 Taux moyen de preemption des tâches (U s = 20%)
62 62 FIG. 46 Taux moyen de preemption des tâches (U s = 40%)
63 FIG. 47 Taux moyen de preemption des tâches (U s = 60%) 63
64 64 FIG. 48 Taux moyen de preemption des tâches (U s = 80%)
65 65 Références [1] G BUTTAZZO et M CACCAMO. Minimizing aperiodic response times in a firm real-time environment. IEEE Trans. Software Eng., 25(1) :22 32, [2] M CACCAMO et G BUTTAZZO. Exploiting skips in periodic tasks for enhancing aperiodic responsivess. 18th IEEE Real-Time Systems Symposium, December [3] H CHETTO et M CHETTO. Some results of the earliest deadline scheduling algorithm. IEEE Transactions on Software Engineering, 15(10) : , October [4] H CHETTO et M SILLY. Dynamic scheduling with laxities in a hard real-time system. IEEE Transcations on Computers, [5] M HAMDAOUI et P RAMANATHAN. A dynamic priority assignment technique for streams with (m,k)-firm deadlines. IEEE Transcations on Computers, 44(4) : , December [6] K JEFFAY et D L STONE. Accounting for interrupt handling costs in dynamic priority task systems. In Proceedings of the 14th IEEE Real-Time Systems Symposium, pages , December [7] G KOREN et D SHASHA. Skip-over algorithms and complexity for overloaded systems that allow skips. 16th IEEE Real-Time Systems Symposium, [8] C L LIU et J W LAYLAND. Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of the Association for Computing Machinery, 20(1) :46 61, January [9] M SILLY. The edl server for scheduling periodic and soft aperiodic tasks with resource constraints. The Journal of Real-Time Systems, Kluwer Academic Publishers, 17 :1 25, 1999.
66
67
68 LABORATOIRE D INFORMATIQUE DE NANTES-ATLANTIQUE Simulation et évaluation d algorithmes d ordonnancement temps-réel sous des contraintes de QoS Audrey MARCHAND et Maryline SILLY-CHETTO Résumé La perspective traditionnelle de la théorie de l ordonnancement temps-réel s est largement reposée sur la communauté des systèmes temps-réel à contraintes strictes dans lesquels le manquement au respect de toutes les échéances des tâches (dites critiques) a souvent des conséquences catastrophiques sur le système contrôlé ainsi que sur son environnement. Cependant, cette perspective peut sembler parfois restrictive et peu adaptée pour un certain nombre d applications émergeantes pour lesquelles, la gestion des cas de surcharge réside dans le fait d écarter certaines instances de tâches de façon à améliorer l utilisation effective des ressources tout en minimisant la dégradation causée par le rejet de ces instances. Ce rapport s intéresse à la simulation et à l évaluation d algorithmes d ordonnancement temps-réel dynamiques sous des contraintes de Qualité de Service (QoS). Les travaux décrits concernent plus précisément l ordonnancement conjoint de tâches périodiques à pertes contraintes et de tâches apériodiques. L approche présentée vise à exploiter les pertes autorisées au niveau des tâches périodiques dans le but de minimiser le temps de réponse moyen aux requêtes apériodiques, par le biais de l utilisation du serveur de tâches apériodiques Earliest Deadline as Late as possible (EDL). Catégories et descripteurs de sujets : D.4.1 [Operating systems]: Process management Termes généraux : Algorithms, Management, Performance Mots-clés additionnels et phrases : systèmes temps-réel, ordonnancement, qualité de service, Earliest-deadline, tâches périodiques, serveur de tâches apériodiques LINA, Université de Nantes 2, rue de la Houssinière B.P F NANTES CEDEX 3
Ordonnancement temps réel
Ordonnancement temps réel [email protected] Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES
Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.
Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement
Master 2 pro Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement Isabelle PUAUT / Rémi COZOT Université de Rennes I 1 Applications temps-réel embarquées Systèmes en interaction avec l
TEPZZ 568448A_T EP 2 568 448 A1 (19) (11) EP 2 568 448 A1 (12) DEMANDE DE BREVET EUROPEEN. (51) Int Cl.: G07F 7/08 (2006.01) G06K 19/077 (2006.
(19) TEPZZ 68448A_T (11) EP 2 68 448 A1 (12) DEMANDE DE BREVET EUROPEEN (43) Date de publication: 13.03.2013 Bulletin 2013/11 (1) Int Cl.: G07F 7/08 (2006.01) G06K 19/077 (2006.01) (21) Numéro de dépôt:
REALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Analyse du temps de réponse des systèmes temps réel
Analyse du temps de réponse des systèmes temps réel Pascal Richard Laboratoire d Informatique Scientifique et Industrielle, ENSMA BP 40198 Téléport 2 F-86960 Futuroscope [email protected] RÉSUMÉ.
Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration
Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...
Résolution d équations non linéaires
Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique
Chapitre 2 Le problème de l unicité des solutions
Université Joseph Fourier UE MAT 127 Mathématiques année 2011-2012 Chapitre 2 Le problème de l unicité des solutions Ce que nous verrons dans ce chapitre : un exemple d équation différentielle y = f(y)
Les systèmes de base de données temps réels. Pokrovskaya Natalia, Kabbali Nadia
Les systèmes de base de données temps réels Pokrovskaya Natalia, Kabbali Nadia Année académique 2008-2009 Table des matières 1 Introduction 2 2 Système de gestion de bases de données classiques 3 3 Systèmes
Introduction au temps réel
Introduction au temps réel [email protected] Version 2.0 Définition d un système temps réel Un système temps réel se compose d'un ou plusieurs sous-systèmes devant répondre en un temps fini et spécifié
Principe de symétrisation pour la construction d un test adaptatif
Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, [email protected] 2 Université
Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)
Surveillance et maintenance prédictive : évaluation de la latence de fautes Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) SURVEILLANCE Analyser une situation et fournir des indicateurs! Détection de symptômes!
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Ordonnancement temps réel et minimisation de la consommation d énergie
Chapitre 4 Ordonnancement temps réel et minimisation de la consommation d énergie 4.1. Introduction La consommation en énergie est devenue un problème crucial dans la conception des équipements électroniques
Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/
Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation
Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)
Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 - Evénements et architectures - Spécifications de performances
Algorithmique des Systèmes Répartis Protocoles de Communications
Algorithmique des Systèmes Répartis Protocoles de Communications Master Informatique Dominique Méry Université de Lorraine 1 er avril 2014 1 / 70 Plan Communications entre processus Observation et modélisation
PRECISION - REJET DE PERTURBATIONS T.D. G.E.I.I.
PRECISION - REJET DE PERTURBATIONS T.D. G.E.I.I.. Donner les erreurs en position, en vitesse et en accélération d un système de transfert F BO = N(p) D(p) (transfert en boucle ouverte) bouclé par retour
ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL
i LE TEMPS RÉEL 1. PRÉSENTATION DU TEMPS RÉEL 1.1. APPLICATIONS TEMPS RÉEL 1.2. CONTRAINTES DE TEMPS RÉEL 2. STRUCTURES D'ACCUEIL POUR LE TEMPS RÉEL 2.1. EXÉCUTIFS TEMPS RÉEL 2.2. RÉSEAUX LOCAUX TEMPS
Temps Réel. Jérôme Pouiller <[email protected]> Septembre 2011
Temps Réel Jérôme Pouiller Septembre 2011 Sommaire Problèmatique Le monotâche Le multitâches L ordonnanement Le partage de ressources Problèmatiques des OS temps réels J. Pouiller
Modèles à Événements Discrets. Réseaux de Petri Stochastiques
Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés
Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.
Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).
Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2
éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........
FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29
FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29 FOIRE AUX QUESTIONS Confidentiel Titre du document : Monetico
Représentation des Nombres
Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...
TP de risque management Risque Forex
TP de risque management Risque Forex Exercice 1 Partie 1. Le but de cette exercice est voir quel sont les options qui permettent de gérer le risque du au taux de change. En effet, dans notre cas, une société
TSTI 2D CH X : Exemples de lois à densité 1
TSTI 2D CH X : Exemples de lois à densité I Loi uniforme sur ab ; ) Introduction Dans cette activité, on s intéresse à la modélisation du tirage au hasard d un nombre réel de l intervalle [0 ;], chacun
Image d un intervalle par une fonction continue
DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction
Etude d un cas industriel : Optimisation de la modélisation de paramètre de production
Revue des Sciences et de la Technologie RST- Volume 4 N 1 /janvier 2013 Etude d un cas industriel : Optimisation de la modélisation de paramètre de production A.F. Bernate Lara 1, F. Entzmann 2, F. Yalaoui
Compression Compression par dictionnaires
Compression Compression par dictionnaires E. Jeandel Emmanuel.Jeandel at lif.univ-mrs.fr E. Jeandel, Lif CompressionCompression par dictionnaires 1/25 Compression par dictionnaire Principe : Avoir une
Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Limites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Probabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur
Les transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions
1/46 2/46 Pourquoi? Anne-Cécile Caron Master MAGE - SGBD 1er trimestre 2014-2015 Le concept de transaction va permettre de définir des processus garantissant que l état de la base est toujours cohérent
TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options
Université de Lorraine Modélisation Stochastique Master 2 IMOI 2014-2015 TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options 1 Les options Le but de ce
Chapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante
Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I
Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I Roxane Duroux 1 Cadre de l étude Cette étude s inscrit dans le cadre de recherche de doses pour des essais cliniques
statique J. Bertrand To cite this version: HAL Id: jpa-00237017 https://hal.archives-ouvertes.fr/jpa-00237017
Quelques théorèmes généraux relatifs à l électricité statique J. Bertrand To cite this version: J. Bertrand. Quelques théorèmes généraux relatifs à l électricité statique. J. Phys. Theor. Appl., 1874,
Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA
75. Un plombier connaît la disposition de trois tuyaux sous des dalles ( voir figure ci dessous ) et il lui suffit de découvrir une partie de chacun d eux pour pouvoir y poser les robinets. Il cherche
Texte Agrégation limitée par diffusion interne
Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse
Projet Active Object
Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques
1 Mesure de la performance d un système temps réel : la gigue
TP TR ENSPS et MSTER 1 Travaux Pratiques Systèmes temps réel et embarqués ENSPS ISV et Master TP1 - Ordonnancement et communication inter-processus (IPC) Environnement de travail Un ordinateur dual-core
Monia Amami Franck Brulhart Raymond Gambini Pierre-Xavier Meschi
Version 4.7 Simulation d Entreprise «Artemis» Monia Amami Franck Brulhart Raymond Gambini Pierre-Xavier Meschi p. 1 1. Objectifs et Contexte Général L objectif de la simulation d entreprise «Artemis» est
Les indices à surplus constant
Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté
Fiche Technique Windows Azure
Le 25/03/2013 OBJECTIF VIRTUALISATION [email protected] EXAKIS NANTES Identification du document Titre Projet Date de création Date de modification Fiche Technique Objectif 25/03/2013 27/03/2013 Windows
Cours 02 : Problème général de la programmation linéaire
Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la Programmation Linéaire. 5 . Introduction Un programme linéaire s'écrit sous la forme suivante. MinZ(ou maxw) =
http://www.ed-diamond.com
Ceci est un extrait électronique d'une publication de Diamond Editions : http://www.ed-diamond.com Ce fichier ne peut être distribué que sur le CDROM offert accompagnant le numéro 100 de GNU/Linux Magazine
Améliorer les performances du site par l'utilisation de techniques de Web Mining
Améliorer les performances du site par l'utilisation de techniques de Web Mining CLUB SAS 2001 17/18 octobre 2001 Stéfan Galissie LINCOLN [email protected] [email protected] 2001 Sommaire
INITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Projet de Traitement du Signal Segmentation d images SAR
Projet de Traitement du Signal Segmentation d images SAR Introduction En analyse d images, la segmentation est une étape essentielle, préliminaire à des traitements de haut niveau tels que la classification,
1 Définition et premières propriétés des congruences
Université Paris 13, Institut Galilée Département de Mathématiques Licence 2ème année Informatique 2013-2014 Cours de Mathématiques pour l Informatique Des nombres aux structures Sylviane R. Schwer Leçon
Trois nouveaux formulaires sont donc nécessaires : Pour l affichage de la liste, un formulaire de sortie WEB_Liste associé à la table des [Films] ;
De la base 4D au site Web 20 Conception des formulaires Web Trois nouveaux formulaires sont donc nécessaires : Pour le dialogue, un formulaire WEB_Trouver associé à la table des [Paramètres] ; Pour l affichage
MATHS FINANCIERES. [email protected]. Projet OMEGA
MATHS FINANCIERES [email protected] Projet OMEGA Sophia Antipolis, septembre 2004 1. Introduction : la valorisation de contrats optionnels Options d achat et de vente : Call et Put Une option
Programmation Linéaire - Cours 1
Programmation Linéaire - Cours 1 P. Pesneau [email protected] Université Bordeaux 1 Bât A33 - Bur 265 Ouvrages de référence V. Chvátal - Linear Programming, W.H.Freeman, New York, 1983.
Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires
Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge [email protected] Laboratoire d Informatique de Nantes Atlantique,
2 disques en Raid 0,5 ou 10 SAS
Serveur GED: INFO EN + Afin d obtenir des performances optimales il est préférable que le serveur soit dédié. Matériel : Processeur Jusqu à 10 utilisateurs 2.0 Ghz environ Jusqu à 30 utilisateurs 2.6 Ghz
ITIL V2. La gestion des changements
ITIL V2 La gestion des changements Création : novembre 2004 Mise à jour : août 2009 A propos A propos du document Ce document de référence sur le référentiel ITIL a été réalisé en 2004 et la traduction
Exercices - Polynômes : corrigé. Opérations sur les polynômes
Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)
Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction
Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d
Chapitre 3. Mesures stationnaires. et théorèmes de convergence
Chapitre 3 Mesures stationnaires et théorèmes de convergence Christiane Cocozza-Thivent, Université de Marne-la-Vallée p.1 I. Mesures stationnaires Christiane Cocozza-Thivent, Université de Marne-la-Vallée
Accédez au test ici http://myspeed.visualware.com/index.php
Test de vitesse VoIP Pourquoi faire le test? Un test de vitesse VoIP est un moyen efficace d évaluer la capacité de votre connexion Internet à prendre en charge un système de téléphonie VoIP. D autres
FICHE PRODUIT COREYE CACHE Architecture technique En bref Plateforme Clients Web Coreye Cache applicative Références Principe de fonctionnement
COREYE CACHE Solution d absorption de charge pour une disponibilité et une performance optimales des applications Web En bref Architecture technique La plateforme Coreye Cache délivre la majeure partie
Chapitre 2 : Systèmes radio mobiles et concepts cellulaires
Chapitre 2 : Systèmes radio mobiles et concepts cellulaires Systèmes cellulaires Réseaux cellulaires analogiques de 1ère génération : AMPS (USA), NMT(Scandinavie), TACS (RU)... Réseaux numériques de 2ème
Livre blanc. Au cœur de Diskeeper 2010 avec IntelliWrite
Livre blanc Au cœur de Diskeeper 2010 avec IntelliWrite AU CŒUR DE DISKEEPER 2010 AVEC INTELLIWRITE Table des matières PRÉSENTATION DE LA TECHNOLOGIE INTELLIWRITE 1 TEST DE PERFORMANCE D INTELLIWRITE 2
Métriques de performance pour les algorithmes et programmes parallèles
Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and
CHAPITRE 5. Stratégies Mixtes
CHAPITRE 5 Stratégies Mixtes Un des problèmes inhérents au concept d équilibre de Nash en stratégies pures est que pour certains jeux, de tels équilibres n existent pas. P.ex.le jeu de Pierre, Papier,
Annexe 6. Notions d ordonnancement.
Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. [email protected] Résumé Ce document
Probabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 10 août 2015 Enoncés 1 Proailités sur un univers fini Evènements et langage ensemliste A quelle condition sur (a,, c, d) ]0, 1[ 4 existe-t-il une proailité P sur
TD n o 8 - Domain Name System (DNS)
IUT Montpellier - Architecture (DU) V. Poupet TD n o 8 - Domain Name System (DNS) Dans ce TD nous allons nous intéresser au fonctionnement du Domain Name System (DNS), puis pour illustrer son fonctionnement,
Initiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Principes de DHCP. Le mécanisme de délivrance d'une adresse IP à un client DHCP s'effectue en 4 étapes : COMMUTATEUR 1. DHCP DISCOVER 2.
DHCP ET TOPOLOGIES Principes de DHCP Présentation du protocole Sur un réseau TCP/IP, DHCP (Dynamic Host Configuration Protocol) permet d'attribuer automatiquement une adresse IP aux éléments qui en font
SYSTEMES ELECTRONIQUES NUMERIQUES
ACTIVITE :MISE EN PLACE D'UN SERVEUR DE TELEPHONIE VOIP-SIP TP @ CONDITIONS D EXERCICE - Moyens et Ressources TAXONOMIE 1 2 3 4 Internet Logiciel Tél SIP Planet VIP 154 PC Logiciel voip client Logiciel
(Third-Man Attack) PASCAL BONHEUR PASCAL [email protected] 4/07/2001. Introduction. 1 Domain Name Server. 2 Commandes DNS. 3 Hacking des serveurs DNS
Détournement de serveur DNS (Third-Man Attack) PASCAL BONHEUR PASCAL [email protected] 4/07/2001 Introduction Ce document traite de la possibilité d exploiter le serveur DNS pour pirater certains sites
Modèle de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes
de troncature gauche : Comparaison par simulation sur données indépendantes et dépendantes Zohra Guessoum 1 & Farida Hamrani 2 1 Lab. MSTD, Faculté de mathématique, USTHB, BP n 32, El Alia, Alger, Algérie,[email protected]
3 Approximation de solutions d équations
3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle
Probabilités III Introduction à l évaluation d options
Probabilités III Introduction à l évaluation d options Jacques Printems Promotion 2012 2013 1 Modèle à temps discret 2 Introduction aux modèles en temps continu Limite du modèle binomial lorsque N + Un
Introduction à la théorie des files d'attente. Claude Chaudet [email protected]
Introduction à la théorie des files d'attente Claude Chaudet [email protected] La théorie des files d'attente... Principe: modélisation mathématique de l accès à une ressource partagée Exemples réseaux
ITIL V3. Exploitation des services : Les processus
ITIL V3 Exploitation des services : Les processus Création : juin 2013 Mise à jour : juin 2013 A propos A propos du document Ce document de référence sur le référentiel ITIL V3 a été réalisé en se basant
Cours Base de données relationnelles. M. Boughanem, IUP STRI
Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),
Chapitre 3. Les distributions à deux variables
Chapitre 3. Les distributions à deux variables Jean-François Coeurjolly http://www-ljk.imag.fr/membres/jean-francois.coeurjolly/ Laboratoire Jean Kuntzmann (LJK), Grenoble University 1 Distributions conditionnelles
Dossier projet isn 2015 par Victor Gregoire
Dossier projet isn 2015 par Victor Gregoire Plan: I) But du projet: créer un jeu de blackjack fonctionnel et le poster sur une page web mise en ligne. Le jeu sera developpé en C++ a l'aide de code blocks.
Chapitre 2. Eléments pour comprendre un énoncé
Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données
Groupe symétrique. Chapitre II. 1 Définitions et généralités
Chapitre II Groupe symétrique 1 Définitions et généralités Définition. Soient n et X l ensemble 1,..., n. On appelle permutation de X toute application bijective f : X X. On note S n l ensemble des permutations
Modélisation et Simulation
Cours de modélisation et simulation p. 1/64 Modélisation et Simulation G. Bontempi Département d Informatique Boulevard de Triomphe - CP 212 http://www.ulb.ac.be/di Cours de modélisation et simulation
Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie
Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie 1 Présenté par: Yacine KESSACI Encadrement : N. MELAB E-G. TALBI 31/05/2011 Plan 2 Motivation
Mathématiques financières
Mathématiques financières Table des matières 1 Intérêt simple 1 1.1 Exercices........................................ 1 2 Intérêt composé 2 2.1 Taux nominal, taux périodique, taux réel.......................
Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1
Chap 4: Analyse syntaxique 1 III- L'analyse syntaxique: 1- Le rôle d'un analyseur syntaxique 2- Grammaires non contextuelles 3- Ecriture d'une grammaire 4- Les méthodes d'analyse 5- L'analyse LL(1) 6-
Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,
Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très
LES DECIMALES DE π BERNARD EGGER
LES DECIMALES DE π BERNARD EGGER La génération de suites de nombres pseudo aléatoires est un enjeu essentiel pour la simulation. Si comme le dit B Ycard dans le cours écrit pour le logiciel SEL, «Paradoxalement,
Certification Conseiller Clientèle bancaire
SAQ Swiss Association for Quality Autorité de certification de personnes Accréditée selon la norme SN/EN ISO IEC 17024:2012 Service d Accréditation Suisse SAS (SCESe 016) Certification Conseiller Clientèle
CONDITIONS GENERALES DE VENTE
CONDITIONS GENERALES DE VENTE Contact : Bibliothèque nationale de France Adresse électronique : [email protected] Téléphone : 01 53 79 49 49 du lundi au vendredi, de 9h à 17h Informations légales
Introduction au Data-Mining
Introduction au Data-Mining Alain Rakotomamonjy - Gilles Gasso. INSA Rouen -Département ASI Laboratoire PSI Introduction au Data-Mining p. 1/25 Data-Mining : Kèkecé? Traduction : Fouille de données. Terme
Ordonnancement temps réel
Ordonnancement temps réel Ordonnancement centralisé par Francis COTTET Professeur d université (ENSMA, Poitiers Futuroscope) Ingénieur de l Institut national polytechnique de Grenoble Docteur ès sciences
LEÇON N 7 : Schéma de Bernoulli et loi binomiale. Exemples.
LEÇON N 7 : Schéma de Bernoulli et loi binomiale. Exemples. Pré-requis : Probabilités : définition, calculs et probabilités conditionnelles ; Notion de variables aléatoires, et propriétés associées : espérance,
Introduction à l étude des Corps Finis
Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur
