Rapport de stage en Master Recherche Informatique

Dimension: px
Commencer à balayer dès la page:

Download "Rapport de stage en Master Recherche Informatique"

Transcription

1 Rapport de stage en Master Recherche Informatique Ordonnancement de tâches dans des grappes de calculateurs par Jérôme Gallard Équipe d'accueil : PARIS Encadrement : Christine Morin, Emmanuel Jeanvoine Juin 2007 Contact : IRISA / INRIA Rennes Campus universitaire de Beaulieu Avenue du Général Leclerc RENNES Cedex - France Téléphone :

2

3 Table des matières Résumé Mots-Clés Abstract Keywords Introduction 1 1 État de l'art Terminologie Notion de tâche Les ressources L'ordonnancement Les grappes gérées par les systèmes à exécution par lots Ordonnancement de tâches : les systèmes à exécution par lots Diérentes politiques d'ordonnancement Les grappes gérées avec les systèmes à image unique Introduction aux systèmes à image unique GLUnix BProc CPlant MOSIX Kerrighed Ordonnancement de tâches communicantes Le Gang-Scheduling Le Co-Scheduling Le co-ordonnancement faiblement couplé (loosely coordinated Co- Scheduling) Le co-ordonnacement exible (Flexible Coscheduling) Bilan Objectifs du stage Présentation des problèmes à traiter Contexte Caractéristiques d'un ordonnanceur Objectifs Approche Contributions Conception d'un ordonnanceur global congurable Infrastructure La politique globale d'ordonnancement Les collections I V V V V

4 II TABLE DES MATIÈRES La collection de ressources La collection de processus Agent de surveillance Surveillance des conditions d'utilisation des ressources Recherche d'actions correctrices Agent d'actions Action nécessitant une simulation Réalisation de l'action Modèle de priorité Exemple introductif Extension Bilan Présentation des algorithmes conçus Initialisation des centres de décision Fonctionnement des centres de décision pour une politique élémentaire 33 4 Application de notre approche à quelques politiques de l'état de l'art Démarrage des tâches avec priorité Politique Écriture de la politique Économie d'énergie Politique Écriture de la politique Filtre sur les processus Gestion dynamique d'applications parallèles à mémoire partagée Politique Écriture de la politique Mise en uvre Ordonnanceur modulaire Mise en uvre de l'ordonnancement dans le cadre de Kerrighed Spécicités du système à image unique Kerrighed Mise en uvre de l'ordonnanceur Gestion des unités Évaluations Conguration équilibrage mémoire Conguration équilibrage processeur Conguration avec priorité équilibrage de la charge processeur puis de la charge réseau Conclusion 57 Bibliographie V

5 TABLE DES MATIÈRES III

6 IV TABLE DES MATIÈRES

7 Résumé Le calcul à haute performance (HPC) est de plus en plus utilisé dans les laboratoires de recherche et l'industrie. Le but est d'exécuter des tâches (ou applications) sur des supercalculateurs, ou des grappes de calculateurs et cela de la manière la plus ecace possible. Le problème de l'ordonnancement des tâches dans les supercalculateurs est connu et de nombreux travaux ont déjà été eectués sur ce sujet. L'avènement des grappes de calculateurs ainsi que les contraintes spéciques qui leur sont liées amènent de nouveaux problèmes du point de vue de l'ordonnancement de ces tâches. De nouvelles contraintes liées aux grappes sont à prendre en compte. Par exemple, dans les grappes, un calcultateur peut avoir à adresser la mémoire d'un autre calculateur. Ceci peut entraîner une baisse des performances de l'ensemble du système si les tâches sont ordonnancées d'une quelconque manière. Ce document traite dans une première partie de ce qui a pu être réalisé concernant la gestion de tâches sur grappes de calculateurs. Puis, il propose une architecture générique d'ordonnanceur qui se veut simple, ecace et évolutif. Mots-Clés : Grappes de calculateurs, ordonnancement, applications parallèles. Abstract Nowadays, HPC (High Performance Computing) is very used for running simulations. The user has an application and a pool of ressources. He wants to run his application on this pool of ressources with a maximum of eciency. To do this, he needs a system able to manage the pool of ressources. We call this system a scheduler. To schedule an application on a supercomputer is now a well known topic. But, the happening of the clusters brings problems about application scheduling. For example, in a cluster, a node can acess to the memory of a distant node and, in certain cases can decrease the performances of the wall system. In this report, we will discuss about this several kinds of problem and we will give a design for a generic scheduler. Keywords : Clusters, scheduling, application. V

8 VI RÉSUMÉ

9 Introduction De nos jours, aussi bien dans l'industrie que dans les laboratoires de recherche, la puissance de calcul est de plus en plus recherchée pour l'exécution d'applications de plus en plus gourmandes en ressources. Par exemple dans l'industrie cinématographique la puissance de calcul est employée pour du calcul d'image. Dans des laboratoires de biologie, elle peut être employée pour des calculs d'anité génétique entre diérentes familles d'animaux. Dans tous les cas, l'objectif est d'exécuter les applications le plus rapidement possible, c'est-àdire réduire le temps entre la soumission de l'application et l'obtention des résultats. C'est cela qu'on appelle le calcul à haute performance (HPC - High Performance Computing). Autrefois, le calcul à haute performance était principalement réalisé sur des supercalculateurs. Avec l'évolution des technologies, une nouvelle architecture est apparue, c'est celle des grappes de calculateurs. Une grappe de calculateurs est l'interconnexion de calculateurs par un réseau rapide. Les grappes sont beaucoup plus évolutives que les supercalculateurs et cela aussi bien du point de vue du matériel que du logiciel. De plus, avec l'évolution du prix du matériel [7], les grappes de calculateurs s'implantent de plus en plus dans le monde du calcul intensif. An d'utiliser ecacement une grappe de calculateurs, il est nécessaire de faire de l'ordonnancement. L'ordonnancement consiste à exécuter un ensemble de tâches sur un ensemble de ressources selon une politique dénie. Les travaux présentés dans ce document ont été eectués au cours d'un stage de Master Recherche, qui s'est déroulé à l'irisa, au sein de l'équipe PARIS, et plus particulièrement dans le contexte de l'activité de recherche Kerrighed. Cette activité de recherche a pour but de concevoir et mettre en uvre un système d'exploitation nommé Kerrighed pour grappe de calculateurs. Kerrighed est un système à image unique qui permet une virtualisation des ressources. Son but est de fournir à l'utilisateur l'impression d'utiliser une machine multiprocesseur virtuelle an de faciliter l'utilisation de la grappe. Cependant, malgré cette facilité d'utilisation, l'on se rend compte que dans beaucoup de cas, la gestion des applications sur ces grappes n'est pas optimum, et les grappes sont sous-exploitées. Par exemple, prenons le cas d'une application constituée de plusieurs processus communicants. L'exécution de cette application sur une grappe peut perdre en ecacité si l'ordonnancement des processus se fait de manière quelconque. Cela est dû au fait qu'il est plus ecace d'ordonnancer des processus communicants simultanément. L'objectif de ce stage est de concevoir un ordonnanceur pour grappe de calculateur qui soit simple d'utilisation. Son but est d'être transparent par rapport à l'utilisateur. L'infrastructure que nous concevons doit permettre la régulation d'une charge de travail au cours du temps sur la grappe, c'est-à-dire ne pas exécuter plus de travail que la grappe n'est capable d'en exécuter pendant une unité de temps. De plus, elle doit faire de l'équilibrage de la charge entre les diérentes ressources de celle-ci, c'est-à-dire, homogénéiser au mieux le travail à eectuer sur toutes les ressources disponibles de la grappe. Ainsi, le placement et le déplacement des processus sur la grappe doit se faire cours du temps en fonction de la disponibilité des ressources. De plus, nous voulons que cet ordonnanceur soit congurable dynamiquement et évolutif, c'est-à-dire adaptable à diérente situation dénie par l'administrateur de la grappe. Enn, nous voulons une infrastructure générique qui ne soit pas contraint à un type d'action préréglé pour la gestion de ressources prédéterminées. Pour faire cela, dans le premier chapitre nous présentons l'état de l'art relatif à l'ordonnancement des tâches sur les grappes cela nous permet de faire un bilan et de dénir nos objectifs par rapport à l'existant. Puis, dans le second chapitre nous précisons le sujet de stage et les objectifs à atteindre. Le chapitre trois, expose les principes de conception de notre ordonnanceur. Dans un quatrième chapitre, nous présentons quelques politiques d'ordonnancement existantes que nous décrivons et que nous appliquons à notre ordonnanceur. Dans le cinquième chapitre, nous décrivons la mise en uvre du système et présentons 1

10 2 INTRODUCTION quelques évaluations de notre prototype. Enn nous concluons et donnons quelques perspectives de travail.

11 Chapitre 1 État de l'art Dans ce chapitre nous présentons l'état de l'art relatif à l'ordonnancement dans les grappes de calculateurs. Dans un premier temps, nous dénissons ce qu'est une tâche, une ressource et ce qu'est l'ordonnancement. Puis nous présentons les systèmes à exécution par lots ainsi que diérentes politiques d'ordonnacement de tâches qui permettent de gérer les n uds sur les grappes. Nous décrivons ensuite une autre méthode de gestion des n uds de la grappe avec les systèmes à image unique. Enn, nous introduisons la problématique des tâches communicantes. 1.1 Terminologie Notion de tâche La liaison entre les ressources dont dispose un ordinateur et les programmes que veut exécuter l'utilisateur est assurée par un système d'exploitation. Soit un processus [14] une succession d'instructions exécutées par un processeur et manipulées par l'ordonnanceur du système d'exploitation. On peut considérer un processus comme une instance d'un programme. Soit une tâche 1 éventuellement constituée de plusieurs processus coopérants. Elle peut être séquentielle ou parallèle. Une tâche composée de plusieurs processus peut donc s'exécuter sur une architecture de type multiprocesseur an que les processus de la tâche puisse s'exécuter sur des processeurs distincts. Certaines tâches ont des processus qui communiquent entre eux par échange de messages (MPI [4], PVM [5]). D'autres utilisent la mémoire partagée oerte par l'architecture ou le système d'exploitation [3]. Il existe des tâches qui peuvent être modiées en cours de fonctionnement, on les nomme tâches malléables. Ces tâches sont capables de s'adapter dynamiquement aux ressources disponibles sans avoir besoin d'être arrêtées et redémarrées Les ressources Dans les calculateurs Les ressources utilisées par un processus sont principalement : le processeur, la mémoire vive et les disques durs. Un processeur exécute les instructions des processus. La mémoire vive est un espace de stockage temporaire dont le temps d'accès (par le processeur) est très faible (de l'ordre de la centaine voire de la dizaine de nanosecondes). Les disques durs sont les unités de stockage permanent (temps d'accès très long de l'ordre de la dizaine de millisecondes). 1 Dans la littérature, on trouvera également la terminologie application ou encore application parallèle. 3

12 4 CHAPITRE 1. ÉTAT DE L'ART Les architectures multiprocesseurs (disposant de plusieurs processeurs et d'une mémoire qui peut être partagée ou non entre tous les processeurs) sont très utilisées dans le domaine du calcul à haute performance. Par exemple, nous pouvons citer les architectures de type SMP (Symmetric Multi Processor) pour lesquelles tous les processeurs ont un accès uniforme à la mémoire partagée. Un seul système d'exploitation gère l'ensemble des processeurs. Dans les grappes de calculateurs Une grappe de calculateurs est l'interconnexion de diérents calculateurs (appelés n uds). Une grappe est vue de l'extérieur comme une seule et même unité de traitement dans le cas où elle est gérée par un système à exécution par lots ou par un système à image unique (plus de détails sont donnés en section 1.2 et 1.3). L'interconnexion de ces diérents n uds est réalisée par l'intermédiaire d'un réseau à haute performance (GigaBit Ethernet [47], Myrinet [13], InniBand [35]). Chaque n ud dispose de son propre système d'exploitation. Une particularité des grappes est que le nombre et la disponibilité des ressources sont uctuants. En eet, un n ud peut être arrêté ou être défaillant sans aecter les autres n uds. De plus, dans une grappe, un processeur peut avoir à adresser la mémoire d'un n ud distant. Cela se fait par l'intermédiaire d'accès au réseau, ce qui augmente les temps de latence et peut entraîner une baisse signicative des performances [15] L'ordonnancement Dans les systèmes disposant de multiples ressources dont l'accès est possible simultanément par de multiples utilisateurs, il est nécessaire de mettre en adéquation les ressources disponibles avec les tâches à exécuter. C'est l'ordonnanceur qui est chargé de l'allocation des processeurs aux tâches. Il organise au mieux l'exécution des diérentes tâches qui lui sont soumises pour qu'elles soient toutes exécutées correctement. Pour ce faire, il gère le partage des processeurs entre diérentes tâches (qui elles même peuvent avoir plusieurs processus) s'exécutant concurremment. Selon le contexte, l'exécution correcte d'une tâche peut avoir diérentes signications. Par exemple, dans les systèmes temps réels, chaque tâche doit être exécutée et terminée dans un intervalle de temps donné. Dans le calcul à haute performance, le but de l'ordonnanceur est de maximiser l'utilisation des ressources pour diminuer le temps de séjour d'une tâche dans le système. Cela nécessite un environnement multiprogrammé, c'est-à-dire que diérentes tâches peuvent s'exécuter en même temps [37]. La gure 1.1 représente les diérentes interactions existant au sein d'un multiprocesseur (qui peut être un supercalculateur ou une grappe) entre les tâches, les processeurs et l'ordonnanceur : l'ordonnanceur sélectionne selon des critères d'administration des tâches à attribuer aux diérents processeurs. Ordonnancement en temps partagé L'ordonnancement en temps partagé consiste à allouer aux tâches s'exécutant sur le système des tranches de temps (time slice) pour l'accès aux ressources. C'est cela qui donne l'illusion que plusieurs processus s'exécutent simultanément sur un système monoprocesseur. La gure 1.2 représente un exemple d'ordonnancement en temps partagé : plusieurs tâches s'exécutent en concurrence sur un unique processeur. Les systèmes d'exploitation traditionnels (tel que Linux [14]) sont multi-tâches et ordonnancent les processus en temps partagé. C'est le système d'exploitation qui permet à un processus d'être exécuté pendant une certaine durée (time slice), puis le stoppe, change

13 1.1. TERMINOLOGIE 5 Fig. 1.1 Représentation des interactions entre les tâches, les processeurs et l'ordonnanceur. Fig. 1.2 Ordonnancement temporel (plusieurs processus pour un seul processeur).

14 6 CHAPITRE 1. ÉTAT DE L'ART de contexte 2 (opération coûteuse, pendant le temps du changement de contexte, aucune exécution de processus ne peut être réalisée) et en exécute un autre et ainsi de suite. L'ordonnancement temporel est fondamental pour tous les systèmes de gestion de tâches. De plus, il permet une bonne utilisation des ressources. En eet, si une seule tâche s'exécute à la fois dans le système, il est fort probable que des ressources restent inutilisées. Ainsi, le temps d'exécution de plusieurs tâches simultanément peut être inférieur à celui de l'exécution de ces mêmes tâches les unes après les autres. Ceci s'explique par le fait que pendant qu'une tâche est en attente d'une entrée/sortie, une autre tâche peut eectuer des calculs. Si les phases d'attente des tâches sont opposées, alors on obtient des performances supérieures à celle de leur exécution en séquence. Prenons l'exemple d'une tâche réalisant de longues lectures sur le disque dur. Le disque dur étant un périphérique d'entrée/sortie avec un fort temps de latence, il est alors intéressant d'ordonnancer au plus tôt l'exécution de cette tâche, an que, pendant le temps d'exécution d'une autre tâche, la lecture sur le disque se fasse. Ainsi, lorsque la première tâche reprend la main sur le processeur, ses données sont chargées et son exécution peut se poursuivre. De cette manière, le temps d'utilisation du processeur a été optimisé (il n'a pas passé de temps à attendre, mais au contraire, il a procédé à l'exécution d'un autre processus pendant ce temps d'attente). Ordonnancement spatial Un ordonnanceur spatial place des tâches sur diérents processeurs. L'ordonnancement spatial est utilisé lorsque les ressources sont distribuées (par exemple dans le cas des grappes de calculateurs). À chaque tâche est attribué un sous-ensemble distinct de processeurs : cela permet de répartir les tâches sur l'ensemble des processeurs disponibles an de les utiliser en parallèle. La gure 1.3 représente un exemple d'ordonnancement spatial. On y voit que les tâches sont exécutées sur diérents processeurs en même temps (parallélisme d'exécution). Quelques caractéristiques des ordonnanceurs Il existe diérentes politiques d'ordonnancement. Un ordonnanceur peut-être capable de gérer des applications temps réel, c'est-à-dire des applications nécessitant une date xe de n d'exécution. Il peut également être adapté à d'autres types d'applications. Par exemple, l'ordonnancement d'un ordinateur de bureau va privilégier tous les accès interactifs au détriment d'une compilation qui se déroule en arrière plan. En revanche, un serveur va optimiser au mieux l'utilisation de toutes ses ressources au détriment de l'interactivité (ce qui est encore plus vrai dans le cas de serveurs de calcul à haute performance). Nous dénissons ci-après quatre critères d'ordonnancement. Ces critères nous permettrons par la suite de discuter des ordonnanceurs présentés en section Ecacité : l'ordonnanceur doit utiliser de manière maximale l'ensemble des ressources. Interactivité : l'ordonnanceur doit faire la diérence entre une tâche interactive exigeant une réponse immédiate et une tâche non-interactive (compilation, calcul d'images...). Équité : les processus ne peuvent pas intervenir auprès de l'ordonnanceur pour bénécier de plus de temps d'exécution. Prévention contre la famine : l'ordonnanceur doit s'assurer que tous les processus sont lancés en temps borné. Prenons le cas de deux tâches : l'une réalisant un calcul intensif (forte utilisation du processeur) et l'autre orientée entrées/sorties (exemple, un traitement de texte qui attend 2 Soit deux processus P1 et P2. P1 est en cours d'exécution. L'opération de changement de contexte de P1 à P2 consiste principalement à sauvegarder les registres du processeur (P1) et restaurer le nouvel état du processeur (P2)[6].

15 1.2. LES GRAPPES GÉRÉES PAR LES SYSTÈMES À EXÉCUTION PAR LOTS 7 Fig. 1.3 Ordonnancement spatial (plusieurs processus pour plusieurs processeurs). la frappe au clavier de l'utilisateur). Il est évident que même les utilisateurs les plus chevronnés, ne taperont pas aussi vite qu'une tâche est capable d'utiliser le processeur. Le but de l'ordonnanceur est donc d'allouer le plus possible le processeur au processus réalisant un calcul intensif tout en ne dégradant pas l'interactivité entre la frappe au clavier de l'utilisateur et l'achage du caractère à l'écran. 1.2 Les grappes gérées par les systèmes à exécution par lots Les grappes sont traditionnellement gérées par un système à exécution par lots (batch [9]) dans le domaine du calcul à haute performance. On distingue dans les grappes un n ud maître et des n uds de calcul. Le n ud maître est le point d'accès au système à exécution par lots et c'est lui qui accède aux ressources de la grappe. La gure 1.4 représente une architecture de grappe gérée par un système à exécution par lots avec N0 le n ud maître et N1-N6 les diérents n uds de calcul. Il existe diérents types d'ordonnanceur : les ordonnanceurs statiques (que nous détaillons dans cette section) et les ordonnanceurs dynamiques (vus en section 1.3). Les ordonnanceurs statiques attribuent une tâche sur un n ud à sa création. Ce type d'ordonnanceur est utilisé dans certains systèmes à exécution par lots (PBS/TORQUE [27] en est un exemple) ou par les implémentations des librairies telles que MPICH [2] ou LAM- MPI [1] pour MPI [4] ou PVM [5]. Ces ordonnanceurs ne peuvent réagir si la charge se déséquilibre entre les diérents n uds au cours du temps Ordonnancement de tâches : les systèmes à exécution par lots Les systèmes à exécution par lots font de l'ordonnancement spatial. Ils sont capables d'écouler une charge de travail sur une période de temps et de manière distribuée sur un ensemble de ressources distribuées. PBS/TORQUE [27], IBM LoadLeveler [19], OAR [18], Condor [44] sont des systèmes à exécution par lots. Ces systèmes disposent de la capacité d'exécuter de manière diérée les tâches qui leur sont soumises. Ces tâches sont alors mises en le d'attente en attendant leur exécution. Généralement, une tâche est exécutée lorsqu'une autre se termine. Les diérents processus d'une tâche parallèle s'exécutent sur

16 8 CHAPITRE 1. ÉTAT DE L'ART Fig. 1.4 Architecture Beowulf. diérents processeurs. L'ordonnanceur alloue à chaque tâche le nombre de processeurs dont elle a besoin. Idéalement une tâche devrait bénécier de toutes les ressources du système pour elle seule. Cependant, cela entraînerait une sous-utilisation des ressources de la grappe : certaines ressources resteraient inutilisées, ce qui créerait une fragmentation des ressources de la grappe et donc une sous-utilisation des ressources disponibles. An d'exploiter au mieux les ressources disponibles, des politiques d'ordonnancement ont été créés. Elles sont spéci- ques à certaines classes d'applications. Nous en décrivons les principales dans la section suivante Diérentes politiques d'ordonnancement L'ordonnancement pose des problèmes d'équité. Par exemple, une longue tâche lancée depuis 3 jours, doit-elle garder la main sur tous les processeurs, alors que d'autres petites tâches sont prêtes à être exécutées et ont un temps d'exécution plus court? Faut-il stopper l'application longue? Faut-il poursuivre son exécution et diérer les applications plus courtes? Toutes ces questions ne sont pas triviales et il n'y a sans doute pas de réponse générale convenant à toutes les situations. Cependant, diérentes techniques d'ordonnancement [41] répondant chacune à une catégorie de problèmes ont été proposées, c'est ce que nous voyons dans les paragraphes suivants. Sans retard La séquence d'exécution des tâches est la même que celle de soumission (l'arrivée d'une tâche dans la le ne peut décaler l'heure de démarrage d'une tâche arrivée plus tôt). L'avantage de cette technique est qu'elle est simple à implémenter. De plus, elle est équitable et assure qu'il n'y a pas de risque de famine. Cependant, elle ne gère pas la diérence entre les tâches interactives et celles qui ne le sont pas. Nous présentons dans les paragraphes suivants une implémentation de cette technique ainsi que diérentes optimisations qui permettent d'améliorer son ecacité [37].

17 1.2. LES GRAPPES GÉRÉES PAR LES SYSTÈMES À EXÉCUTION PAR LOTS 9 FCFS. Il existe diérentes politiques pour décider de l'allocation des processeurs aux tâches en attente. La politique la plus simple est celle appelée FCFS (First Come, First Served). Elle est fondée sur une politique sans retard avec une seule le d'attente. Lorsqu'une tâche arrive, elle est automatiquement mise dans cette le et n'est servie que lorsque celles qui sont arrivées avant elle dans la le ont été exécutées. Cette méthode ne permet pas une utilisation ecace des ressources [28] (en moyenne, seulement 25% des ressources sont utilisées sur la machine IBM/SP2 avec le système à exécution par lots LoadLeveler). En eet, cette politique ne prend pas en compte la fragmentation de l'espace (seule une tâche peut être exécuté à la fois ce qui peut entraîner une sous-exploitation de certaines ressources). Déclinaison. Une déclinaison de cette politique en politique gloutonne consiste à vider la le d'attente des tâches en attribuant à chaque fois le nombre minimal de ressources requises et de recommencer immédiatement avec la prochaine tâche en le d'attente (si la prochaine tâche en le d'attente exige plus de ressources qu'il y en a de disponible, alors l'algorithme se bloque en attendant une libération des ressources). Cependant, cette politique n'est pas très ecace non plus. En eet, si plusieurs grosses tâches se suivent dans la le d'attente, elles ne peuvent pas s'exécuter en même temps parce qu'elles demandent trop de ressources. FCFS-FF. Une autre politique pour remédier à ce problème est le FCFS-FF (First Come, First Served, First Fit). Cette politique permet de mettre les tâches dans diérentes les (dépendant par exemple du temps d'exécution de la tâche). Et ensuite, par exemple, selon les horaires (travaux de nuit : travaux ayant un long temps d'exécution, travaux de jour : travaux ayant un court temps d'exécution), l'ordonnanceur vide les diérentes les (selon une politique FCFS). La première tâche trouvée dans les les qui correspond à la politique en cours est exécutée. Bien qu'elle soit plus performante, cette technique n'est pas non plus la plus ecace [28] (40% à 60% des ressources sont utilisées). Backlling [39]. La technique du backlling permet d'exécuter des tâches de courte durée qui sont à la n de la le d'attente avant des tâches de longue durée qui sont placées devant dans la le. Pour réaliser cela il faut soit que l'utilisateur spécie une durée approximative de temps d'exécution de sa tâche, soit que l'ordonnanceur est capable de trouver ces informations à partir des analyses de compilation. En pratique, dans la plupart des cas, il est demandé à l'utilisateur de fournir une durée approximative du temps d'exécution de sa tâche. Soit une tâche A de longue durée en cours d'exécution sur diérents n uds. Supposons qu'il reste des n uds non utilisés par A. Le backlling permet d'exécuter des tâches sur les n uds restants disponibles à condition que ceux-ci ne se terminent pas après la tâche A (cela dans le but de ne pas décaler le démarrage de la tâche B qui est encore en le d'attente mais qui n'a pu être démarrée, faute de ressources disponibles en quantité susante). Cette technique permet une utilisation des ressources d'environ 80% [28]. Priorités Une priorité est attribuée à chaque tâche. Cette priorité dépend de l'importance de la tâche ou bien de son temps d'exécution. L'avantage de cette méthode est qu'elle permet de traiter des travaux de courte durée rapidement. Ainsi cette méthode est ecace (maximisation de l'utilisation des ressources), et est d'une certaine manière interactive (les tâches plus courtes peuvent être exécutées avant les plus longues). L'inconvénient est qu'il peut y avoir un risque de famine.

18 10 CHAPITRE 1. ÉTAT DE L'ART LOS - Lookahead Optimizing Scheduler [39]. LOS est un algorithme d'ordonnancement qui ne parcourt pas uniquement la le à la recherche de la première tâche qui pourrait être exécutée pour boucher les trous, mais qui recherche dans la le l'ensemble des tâches à exécuter en même temps an de maximiser le taux d'utilisation des ressources. Cependant, en cas de forte charge les performances de cet ordonnanceur peuvent diminuer (l'algorithme perd en performance s'il y a un grand nombre de tâches en le d'attente). Pour y remédier, il a été introduit un nouveau paramètre qui correspond à la taille de la fenêtre de la le dans laquelle l'ordonnanceur cherche le meilleur agencement possible entre les tâches (la taille de la fenêtre est bien entendu inférieure à celle de la longueur totale de la le d'attente). Retard limite La méthode du retard limite assigne à chaque tâche un temps limite de retard à l'exécution en relachant ainsi les contraintes liées à l'ordre de soumission des tâches. Lors de la soumission à chaque tâche est assigné un délai d qui va dénir le temps maximum que la tâche peut attendre avant d'être lancée (la tâche peut donc être lancée pour tout instant t tel que t d). Ce type d'ordonnancement est ecace. Cependant, le coût de calcul de l'ordonnanceur est lui très important. De plus, le risque de famine est évité et cette technique permet d'une certaine manière de gérer les applications intéractives (une application courte, interactive, à de fortes chances d'être exécutée avant une application longue, non-interactive). IBM SP Scheduler [42]. L'IBM SP Scheduler allie la méthode de priorité et celle de retard limite. À chaque tâche est associée une priorité et un retard limite. Chaque fois qu'une nouvelle tâche est insérée dans la le, toutes les priorités et retards limites sont recalculés. Puis, l'ordonnanceur choisit d'exécuter les meilleures tâches. Par exemple, si une tâche A est soumise avec un temps d'exécution estimé à 15 minutes et que dans la le d'attente, il y a une tache B (de même priorité que A) dont le délai maximum de lancement est xé à 60 minutes, alors l'ordonnanceur va pouvoir lancer la tâche A, en sachant que lorsqu'elle se nira, la tâche B, n'aura pas dépassé son heure limite de lancement. Les techniques employées dans l'ordonnanceur IBM SP Scheduler apporte un gain d'environ 10% par rapport au backlling. Heure de n Cette méthode impose à une tâche une heure de n d'exécution. Elle est très utilisée dans les systèmes qui sont à temps réel. Le problème majeur de cette méthode est que dans certains cas il n'est pas possible de trouver une adéquation entre les travaux à exécuter et les diérentes heures de n à respecter. Ces algorithmes sont très contraignants car ils doivent gérer les applications intractives tout en étant ecace et en assurant qu'il ne puisse y avoir un risque de famine. EDF - Earliest Deadline First [29]. EDF est un algorithme d'ordonnancement préemptif utilisé dans les systèmes temps réel. Il attribue une priorité à chaque tâche en fonction de la date d'échéance de cette dernière. Au plus vite une tâche doit être réalisée, au plus tôt elle aura de chances d'être exécutée. Un défaut de cet algorithme est qu'il ne sait pas gérer les tâches lorsque le système est surchargé. Dans ces conditions l'utilisation d'un tel algorithme peut devenir hasardeux.

Rapport Bibliographique

Rapport Bibliographique Rapport Bibliographique Ordonnancement de tâches dans des grappes de calculateurs par Jérôme Gallard Équipe d'accueil : PARIS Encadrement : Christine Morin Février 2007 Contact : IRISA / INRIA Rennes Campus

Plus en détail

Gestion du processeur central

Gestion du processeur central Chapitre II Gestion du processeur central 1. Introduction Evolution des systèmes informatiques 1.1- Premier système : Le programmeur/opérateur doit écrire un programme ensuite le faire fonctionner directement

Plus en détail

GESTION DES PROCESSUS

GESTION DES PROCESSUS CHAPITRE 2 : GESTION DES PROCESSUS Objectifs spécifiques Connaître la notion de processus, Connaître les caractéristiques d un processus ainsi que son contexte Connaître la notion d interruptions et de

Plus en détail

La gestion des processus

La gestion des processus La gestion des processus Processus Un processus est un programme en cours d exécution. - Un programme est une suite d instructions ; c est du texte, un code statique. - Le processus est un concept dynamique,

Plus en détail

Systèmes d'exploitation Gestion des processus

Systèmes d'exploitation Gestion des processus Systèmes d'exploitation Gestion des processus Cours SYE Prof. Daniel Rossier Version 2.3 (2009-2010) 1 Plan Processus Changement de contexte Threads IPC (Inter-Process Communication) Algorithmes d'ordonnancement

Plus en détail

Partie 6 : Ordonnancement de processus

Partie 6 : Ordonnancement de processus INF3600+INF2610 Automne 2006 Partie 6 : Ordonnancement de processus Exercice 1 : Considérez un système d exploitation qui ordonnance les processus selon l algorithme du tourniquet. La file des processus

Plus en détail

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

Plus en détail

Processus et gestion de processus

Processus et gestion de processus Processus et gestion de processus et gestion de processus Processus Définition Modélisation Descripteur État Création Destruction Allocation de ressources UNIX Processus UNIX - Modèle Création Terminaison

Plus en détail

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 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

Plus en détail

2. Structure d un système d exploitation

2. Structure d un système d exploitation Systèmes d exploitation : 2. Structure d un système d exploitation 0 Structure d un système d exploitation () Structure () APPLICATIONS SYSTEME D EXPLOITATION MATERIEL applications (jeux, outils bureautiques,

Plus en détail

Chap. III : Le système d exploitation

Chap. III : Le système d exploitation UMR 7030 - Université Paris 13 - Institut Galilée Cours Architecture et Système Le système d exploitation (ou O.S. de l anglais Operating System ) d un ordinateur est le programme qui permet d accéder

Plus en détail

SCHEDULING. 1.1 Simultanéité, ressources On appelle simultanéité l'activation de plusieurs processus au même moment.

SCHEDULING. 1.1 Simultanéité, ressources On appelle simultanéité l'activation de plusieurs processus au même moment. Chapitre SCHEDULING. ASPECTS GENERAUX DES PROCESSUS Un processus est un programme qui s'exécute, ainsi que ses données, sa pile, son compteur ordinal, son pointeur de pile et les autres contenus de registres

Plus en détail

Cours Systèmes d exploitation 1

Cours Systèmes d exploitation 1 Cours Systèmes d exploitation 1 Achraf Othman Support du cours : www.achrafothman.net 1 Plan du cours Chapitre 1 : Gestion des processus Chapitre 2 : Ordonnancement des processus Chapitre 3 : La communication

Plus en détail

Ordonnancement des processus. Didier Verna. didier@lrde.epita.fr http://www.lrde.epita.fr/ didier. Systèmes d Exploitation. Didier Verna EPITA

Ordonnancement des processus. Didier Verna. didier@lrde.epita.fr http://www.lrde.epita.fr/ didier. Systèmes d Exploitation. Didier Verna EPITA 1/16 Ordonnancement des processus didier@lrde.epita.fr http://www.lrde.epita.fr/ didier 2/16 Table des matières 1 Ordonnancement et réquisition d ordonnancement 2 d ordonnancement Premier arrivé premier

Plus en détail

Check-list de maintenance du système Instructions impératives pour l'utilisateur du système Dernière mise à jour 09 juin 2011

Check-list de maintenance du système Instructions impératives pour l'utilisateur du système Dernière mise à jour 09 juin 2011 ANNEXE 3 Check-list de maintenance du système Instructions impératives pour l'utilisateur du système Dernière mise à jour 09 juin 2011 Généralités Afin de pouvoir garantir un support sûr et efficace du

Plus en détail

Correction TD3 : Ordonnancement de processus

Correction TD3 : Ordonnancement de processus Ministère de l enseignement Supérieur Institut Supérieur des Etudes Technologiques de Sfax Département informatique A. U. 2011-2012 2 eme semestre : Classes : INFO-L1 Date : Avril 2012 Matière : Systèmes

Plus en détail

Chapitre IV : La gestion du processeur Mécanismes d ordonnancement

Chapitre IV : La gestion du processeur Mécanismes d ordonnancement Chapitre IV : La gestion du processeur Mécanismes d ordonnancement Eric.Leclercq@u-bourgogne.fr Département IEM http://ufrsciencestech.u-bourgogne.fr http://ludique.u-bourgogne.fr/~leclercq 1 er mars 2007

Plus en détail

Introduction à la notion de système d'exploitation

Introduction à la notion de système d'exploitation Page 1 sur 9 1. Sommaire 1. Sommaire... 2 2. Description du système... 3 2.1. Rôles du système... 3 2.2. Composantes du système... 4 2.3. Systèmes multitâches... 4 2.4. Systèmes multi-processeurs... 4

Plus en détail

1 Exercice 1 Question de cours (4 points)

1 Exercice 1 Question de cours (4 points) Info32B Systèmes d'exploitation année 2013-2014 Examen (1ère session) 16 décembre 2014 N. Sabouret L'épreuve dure 2h30. Tous les documents sont autorisés. Les exercices sont indépendants. 1 Exercice 1

Plus en détail

M2 TIIR (2013-2014) Bilel Derbel

M2 TIIR (2013-2014) Bilel Derbel M2 TIIR (2013-2014) Bilel Derbel Notre but est de concevoir une application générique sur grid5000 qui permet de déployer des calculs parallèles de façon transparente Plus précisément, nous nous plaçons

Plus en détail

Questions à choix multiples Page 1 de 11

Questions à choix multiples Page 1 de 11 INF3172 Principes des systèmes d'exploitation Examen intra hiver 2015 Question #1 Quel est l'objectif d'un système d'exploitation? a) Protéger les composants de l'ordinateur b) Fournir une abstraction

Plus en détail

ORDONNANCEMENT DE L'UNITE DE TRAITEMENT

ORDONNANCEMENT DE L'UNITE DE TRAITEMENT ORDONNANCEMENT DE L'UNITE DE TRAITEMENT 1. OBJECTIFS... 2 2. ASSIGNATIONS ET DIAGRAMMES DE GANTT... 2 3. ALGORITHMES SANS RÉQUISITION... 4 3.1. ORDONNANCEMENT DANS L'ORDRE D'ARRIVÉE (FIFO)... 4 3.2. PLUS

Plus en détail

Table des matières. Cours Système d Exploitation. Chapitre II : Gestion des processus

Table des matières. Cours Système d Exploitation. Chapitre II : Gestion des processus Chapitre II : Gestion des processus Table des matières I Processus et contexte d un processus 2 II État d un processus 3 III Système d exploitation multi-tâches et parallélisme 3 IV Problèmes dues au multi-tâches

Plus en détail

Communications performantes par passage de message entre machines virtuelles co-hébergées

Communications performantes par passage de message entre machines virtuelles co-hébergées Communications performantes par passage de message entre machines virtuelles co-hébergées François Diakhaté1,2 1 CEA/DAM Île de France 2 INRIA Bordeaux Sud Ouest, équipe RUNTIME Renpar 2009 1 Plan Introduction

Plus en détail

Ordonnancement. Semestre 6 2012-2013. Licence miage Université Lille 1 Pour toutes remarques : Alexandre.Sedoglavic@univ-lille1.fr.

Ordonnancement. Semestre 6 2012-2013. Licence miage Université Lille 1 Pour toutes remarques : Alexandre.Sedoglavic@univ-lille1.fr. V-2 (02-03-2009) Licence miage Université Lille 1 Pour toutes remarques : Alexandre.Sedoglavic@univ-lille1.fr Semestre 6 2012-2013 Quelques faits motivant la notion Sur une machine, il y a plus de processus

Plus en détail

Détection d'intrusions en environnement haute performance

Détection d'intrusions en environnement haute performance Symposium sur la Sécurité des Technologies de l'information et des Communications '05 Détection d'intrusions en environnement haute performance Clusters HPC Fabrice Gadaud (fabrice.gadaud@cea.fr) 1 Sommaire

Plus en détail

Les Systèmes d Exploitation: Concepts et Programmation

Les Systèmes d Exploitation: Concepts et Programmation Les Systèmes d Exploitation: d Concepts et Programmation Samia Bouzefrane MCF en Informatique, CNAM samia.bouzefrane@cnam.fr http://cedric.cnam.fr/~bouzefra Samia Bouzefrane, Cours SYSTEME 1 Introduction

Plus en détail

Algorithmique distribuée. Exclusion mutuelle

Algorithmique distribuée. Exclusion mutuelle Algorithmique distribuée Exclusion mutuelle Eric Cariou Master Technologies de l'internet 1 ère année Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Exclusion

Plus en détail

Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V

Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V Microsoft France Division DPE Table des matières Présentation... 2 Objectifs... 2 Pré requis... 2 Quelles sont les

Plus en détail

Architecture des calculateurs

Architecture des calculateurs Chapitre 1 Architecture des calculateurs 1.1 Introduction Ce paragraphe n a pas la prétention de présenter un cours d informatique. D une manière générale, seuls les caractéristiques architecturales qui

Plus en détail

Systèmes d exploitation. Introduction. (Operating Systems) http://www.sir.blois.univ-tours.fr/ mirian/

Systèmes d exploitation. Introduction. (Operating Systems) http://www.sir.blois.univ-tours.fr/ mirian/ Systèmes d exploitation (Operating Systems) Introduction SITE : http://www.sir.blois.univ-tours.fr/ mirian/ Systèmes d exploitation - Mírian Halfeld-Ferrari p. 1/2 Qu est-ce qu un SE? Ensemble de logiciels

Plus en détail

Cahier de charges Projet 24

Cahier de charges Projet 24 Cahier de charges Projet 24 Répartition automatique de surcharge sur serveur web virtualisé Etudiants : KAOUACHI Youssef ELFELLAH Amine Encadré par : M. HAYEL Yezekael Année universitaire : 2008/2009 I-

Plus en détail

CHAPITRE III : GESTION DES PROCESSUS

CHAPITRE III : GESTION DES PROCESSUS Systèmes d exploitation des Ordinateurs 19 CHAPITRE III : GESTION DES PROCESSUS 3.1 CONCEPT DE PROCESSUS : On peut trouver plusieurs appellations possibles des activités que peut avoir un processeur. Un

Plus en détail

De nombreux processus sont gérés par le SE L'efficacité théorique serait maximale si le nombre de processeurs était comparable à celui des processus

De nombreux processus sont gérés par le SE L'efficacité théorique serait maximale si le nombre de processeurs était comparable à celui des processus De nombreux processus sont gérés par le SE L'efficacité théorique serait maximale si le nombre de processeurs était comparable à celui des processus Dans la plupart des cas la machine possède quelques

Plus en détail

Chapitre 3 Gestion des sauvegardes

Chapitre 3 Gestion des sauvegardes Chapitre 3 Gestion des sauvegardes 1. Notions préalables et terminologie Gestion des sauvegardes 1.1 Consistance, snapshots et VSS L'erreur la plus commune lorsque l'on parle de solutions de sauvegarde,

Plus en détail

Le système Windows. Yves Denneulin. Introduction. Introduction. Plan

Le système Windows. Yves Denneulin. Introduction. Introduction. Plan Introduction Le système Windows Yves Denneulin Windows a 25 ans Au début basé sur MS/DOS Multi-tâches coopératifs Pas de réelle protection entre applications Famille 1.0 -> 386 -> 95 -> 98 -> Me Version

Plus en détail

Historique. Évolution des systèmes d exploitation (à travers les âges)

Historique. Évolution des systèmes d exploitation (à travers les âges) Historique Évolution des systèmes d exploitation (à travers les âges) Historique L histoire des systèmes d exploitation permet de dégager des concepts de base que l on retrouve dans les systèmes actuels

Plus en détail

1.1 Remote Procedure Call (RPC)

1.1 Remote Procedure Call (RPC) 1.1 Remote Procedure Call (RPC) Le modèle Client-Serveur est un modèle simple à utiliser pour la structuration des systèmes répartis. Mais ce modèle s appuie sur des communications de type entrée/sortie

Plus en détail

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2

Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2 186 Hyper-V et SC Virtual Machine Manager sous Windows Server 2008 R2 L'utilisation des fonctionnalités de haute disponibilité intégrées aux applications, L'ajout de solutions tierces. 1.1 Windows Server

Plus en détail

Module 4 - Ordonnancement Processus. Lecture: Chapitre 5

Module 4 - Ordonnancement Processus. Lecture: Chapitre 5 Module 4 - Ordonnancement Processus Lecture: Chapitre 5 1 Aperçu du module Concepts de base Critères d ordonnancement Algorithmes d ordonnancement Ordonnancement de multiprocesseurs Évaluation d algorithmes

Plus en détail

Chap. V : Les interruptions

Chap. V : Les interruptions UMR 7030 - Université Paris 13 - Institut Galilée Cours Architecture et Système Nous étudions dans ce chapitre les interruptions matérielles (ou externes), c est-à-dire déclenchées par le matériel (hardware)

Plus en détail

CH.3 SYSTÈMES D'EXPLOITATION

CH.3 SYSTÈMES D'EXPLOITATION CH.3 SYSTÈMES D'EXPLOITATION 3.1 Un historique 3.2 Une vue générale 3.3 Les principaux aspects Info S4 ch3 1 3.1 Un historique Quatre générations. Préhistoire 1944 1950 ENIAC (1944) militaire : 20000 tubes,

Plus en détail

Systèmes d'exploitation Chapitre II. Gestion des processus

Systèmes d'exploitation Chapitre II. Gestion des processus Systèmes d'exploitation Chapitre II Gestion des processus 1 Processus Un programme qui s exécute Les ordinateurs autorisent maintenant plusieurs processus simultanément (pseudo parallélisme) A B A B C

Plus en détail

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges c Copyleft 2006, ELSE Team 18 avril 2006 Table des matières 1 Introduction 2 2 Présentation du projet 3 2.1 Une distribution Évolulable..................

Plus en détail

Equilibre de charge. Equilibre de charge statique Equilibre de charge dynamique

Equilibre de charge. Equilibre de charge statique Equilibre de charge dynamique Equilibre de charge Equilibre de charge statique Equilibre de charge dynamique Approches centralisées Approches distribuées Approches semi-distribuées Jaillet Info53 - L3 Informatique - 2006 1 Equilibre

Plus en détail

La technologie RAID. L'essentiel. Que choisir?

La technologie RAID. L'essentiel. Que choisir? La technologie RAID L'essentiel Que choisir? Alben21 - Tous droits réservés - Edition 2012 RAID (Redundant Array of Independent Disks) = Ensemble redondant de disques indépendants La technologie RAID permet

Plus en détail

Théorie des Systèmes d'exploitation : Introduction

Théorie des Systèmes d'exploitation : Introduction Théorie des Systèmes d'exploitation : Introduction Quelques systèmes d'exploitation... 3 Architecture des ordinateurs... 4 Schéma simplifié :... 4 Les concepts des systèmes d'exploitation... 5 Les 2 principales

Plus en détail

Systèmes temps réel Concepts de base. Richard Grisel Professeur des Universités Université de Rouen

Systèmes temps réel Concepts de base. Richard Grisel Professeur des Universités Université de Rouen Systèmes temps réel Concepts de base Richard Grisel Professeur des Universités Université de Rouen 1 Systèmes temps réel - Choix Gestion des ressources Ordonnancement ( Scheduling ), Tolérance aux fautes

Plus en détail

Architecture des ordinateurs. Optimisation : pipeline. Pipeline (I) Pipeline (II) Exemple simplifié : Instructions de type R

Architecture des ordinateurs. Optimisation : pipeline. Pipeline (I) Pipeline (II) Exemple simplifié : Instructions de type R Architecture des ordinateurs Licence Informatique - Université de Provence Jean-Marc Talbot Optimisation : pipeline jtalbot@cmi.univ-mrs.fr L3 Informatique - Université de Provence () Architecture des

Plus en détail

VMware vsphere 5 Maîtrisez l exploitation de votre infrastructure virtuelle

VMware vsphere 5 Maîtrisez l exploitation de votre infrastructure virtuelle 212 VMware vsphere 5 Maîtrisez l exploitation de votre infrastructure virtuelle Quoi qu'il en soit, gardez à l esprit que nous n avons pas voulu favoriser une technologie en particulier. Cependant, nous

Plus en détail

Introduction à l'algorithmique Distribuée. Exclusion mutuelle

Introduction à l'algorithmique Distribuée. Exclusion mutuelle Introduction à l'algorithmique Distribuée Exclusion mutuelle Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Exclusion mutuelle distribuée Exclusion

Plus en détail

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Les Clusters Les Mainframes Les Terminal Services Server La virtualisation De point de vue naturelle, c est le fait de regrouper

Plus en détail

La réplication sous SQL Server 2005

La réplication sous SQL Server 2005 La réplication sous SQL Server 2005 Mettre en place la réplication sur SQL Server 2005 La réplication des bases de données est une problématique classique dans les systèmes d'information. En effet, dans

Plus en détail

Windows 2008 server -Introduction-

Windows 2008 server -Introduction- Windows 2008 server -Introduction- Rappel sur les systèmes d exploitation Un système d exploitation (Operating System) est un ensemble de programmes responsables de la liaison entre les ressources matérielles

Plus en détail

Questions à choix multiples Page 1 de 11

Questions à choix multiples Page 1 de 11 INF4170 Architecture des ordinateurs Examen final hiver 2015 Question #1 Quelle est la taille du registre IF/ID dans le circuit du processeur avec pipeline sans gestion des aléas, considérant que le signal

Plus en détail

Synchronisation des Processus et les sémaphores

Synchronisation des Processus et les sémaphores Synchronisation des Processus et les sémaphores Achraf Othman Support du cours : www.achrafothman.net 1 PLAN Spécification du problème Section Critique (SC) Exclusion Mutuelle Principe Propriétés Réalisation

Plus en détail

ARCHITECTURES DES SYSTÈME DE BASE DE DONNÉES. Cours Administration des Bases de données M Salhi

ARCHITECTURES DES SYSTÈME DE BASE DE DONNÉES. Cours Administration des Bases de données M Salhi ARCHITECTURES DES SYSTÈME DE BASE DE DONNÉES Cours Administration des Bases de données M Salhi Architectures des Système de base de données Systèmes centralisés et client-serveur Server System Architectures

Plus en détail

Atelier No1 : Installation de Windows Server 2003 Standard Edition Configuration du protocole TCP/IP

Atelier No1 : Installation de Windows Server 2003 Standard Edition Configuration du protocole TCP/IP Atelier No1 : Installation de Windows Server 2003 Standard Edition Configuration du protocole TCP/IP Précisions concernant les équipes de travail: Afin de rationaliser les équipements disponibles au niveau

Plus en détail

BEP Systèmes Electroniques Industriels et Domestiques

BEP Systèmes Electroniques Industriels et Domestiques Fiche de procédure : Créer un réseau domestique sous Windows XP I) Préambule Cette fiche méthode a été créée avec l'objectif de donner aux débutants la possibilité de créer un réseau domestique sous Windows

Plus en détail

Gestion dynamique des tâches dans les grappes

Gestion dynamique des tâches dans les grappes Gestion dynamique des tâches dans les grappes une approche à base de machines virtuelles Fabien Hermenier Équipe ASCOLA, École des Mines de Nantes 26 novembre 2009 Fabien Hermenier (ASCOLA) Gestion dynamique

Plus en détail

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

Plus en détail

Niveau 1. Disque 1 Bande 1 Bande 4 Bande 7. Disque 3 Bande 3 Bande 6 Bande 9. Disque 2 Bande 2 Bande 5 Bande 8

Niveau 1. Disque 1 Bande 1 Bande 4 Bande 7. Disque 3 Bande 3 Bande 6 Bande 9. Disque 2 Bande 2 Bande 5 Bande 8 Présentation de la technologie RAID, un article de «Comment ça marche» La technologie RAID (acronyme de Redundant Array of Inexpensive Disks, parfois Redundant Array of Independent Disks, traduisez Ensemble

Plus en détail

CHAPITRE 4: RAID (Redundant Array of Independant / Inexpensive Disks)

CHAPITRE 4: RAID (Redundant Array of Independant / Inexpensive Disks) CHAPITRE 4: RAID (Redundant Array of Independant / Inexpensive Disks) Le system RAID peut être Matériel ou Logiciel I. RAID 0 : Volume agrégé par bandes (Striping) On a un fichier découpé en plusieurs

Plus en détail

Online Help StruxureWare Data Center Expert

Online Help StruxureWare Data Center Expert Online Help StruxureWare Data Center Expert Version 7.2.7 Système virtuel StruxureWare Data Center Expert Le serveur StruxureWare Data Center Expert 7.2 est disponible comme système virtuel pris en charge

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

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.

Plus en détail

Programmation système : sémaphores

Programmation système : sémaphores Programmation système : sémaphores Un sémaphore permet de protéger une variable (ou un type de donnée abstrait) et constitue la méthode utilisée couramment pour restreindre l'accès à des ressources partagées

Plus en détail

VMWare Infrastructure 3

VMWare Infrastructure 3 Ingénieurs 2000 Filière Informatique et réseaux Université de Marne-la-Vallée VMWare Infrastructure 3 Exposé système et nouvelles technologies réseau. Christophe KELLER Sommaire Sommaire... 2 Introduction...

Plus en détail

Mémoire virtuelle. Généralités

Mémoire virtuelle. Généralités Mémoire virtuelle Généralités La pagination pure - Conversion d adresses virtuelles en adresses physiques - Table des pages à plusieurs niveau et table inversée - Algorithmes de remplacement de page -

Plus en détail

GENERALITES SUR LES SYSTEMES D EXPLOITATION

GENERALITES SUR LES SYSTEMES D EXPLOITATION CHAPITRE 1 : GENERALITES SUR LES SYSTEMES D EXPLOITATION Objectifs spécifiques Connaître la définition d un système d exploitation Connaître le rôle d un système d exploitation Connaître les classes des

Plus en détail

Système. Introduction aux systèmes informatiques

Système. Introduction aux systèmes informatiques Introduction aux systèmes informatiques Système Un système est une collection organisée d'objets qui interagissent pour former un tout Objets = composants du système Des interconnexions (liens) entre les

Plus en détail

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Chapitre V : La gestion de la mémoire Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Introduction Plusieurs dizaines de processus doivent se partager

Plus en détail

Installation du Serveur - Windows Server 2003

Installation du Serveur - Windows Server 2003 Installation du Serveur - Windows Server 2003 Nous allons commencer par l installation du serveur afin de remplir les conditions nécessaires et préparer celui-ci à l installation des services : Active

Plus en détail

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Oussama ELKACHOINDI Wajdi MEHENNI RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Sommaire I. Préliminaire : Notice d exécution et mode opératoire...4 II. Architecture globale de l application...5

Plus en détail

Le Rô le Hyper V Secônde Partie Ope ratiôns avance es avec Hyper-V

Le Rô le Hyper V Secônde Partie Ope ratiôns avance es avec Hyper-V Le Rô le Hyper V Secônde Partie Ope ratiôns avance es avec Hyper-V Microsoft France Division DPE Table des matières Présentation... 2 Objectifs... 2 Pré requis... 2 Quelles sont les principales fonctionnalités

Plus en détail

http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux

http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux http://cri.univ-lille1.fr Virtualisation de Windows dans Ubuntu Linux Version 1.0 Septembre 2011 SOMMAIRE 1. Introduction 3 2. Installation du logiciel de virtualisation VirtualBox 4 3. Création d'une

Plus en détail

NOTIONS SUR WINDOWS NT

NOTIONS SUR WINDOWS NT Chapitre 10 NOTIONS SUR WINDOWS NT Le système d'exploitation WINDOWS NT (New Technology) a été conçu par Microsoft entre 1988 et 1993. Cinq objectifs étaient poursuivis en créant ce nouveau SE : - offrir

Plus en détail

TCSMP - Time-Cost Stamped Mail Protocol

TCSMP - Time-Cost Stamped Mail Protocol Projet de Master Informatique M1 Université Paris-Est Marne-la-Vallée Session TCSMP Time-Cost Stamped Mail Protocol TCSMP - Time-Cost Stamped Mail Protocol Documentation utilisateur,,, Introduction...

Plus en détail

Services et protocoles pour l'exécution fiable d'applications distribuées dans les grilles de calcul

Services et protocoles pour l'exécution fiable d'applications distribuées dans les grilles de calcul Services et protocoles pour l'exécution fiable d'applications distribuées dans les grilles de calcul Thomas Ropars Équipe-projet PARIS 1 Les applications de calcul scientifique Objectifs : Simuler des

Plus en détail

Chapitre 5. Communication interprocessus. 5.1 Introduction

Chapitre 5. Communication interprocessus. 5.1 Introduction Communication interprocessus 5.1 Introduction Dans une activité parallèle (ou pseudo parallèle), un ensemble de processus séquentiels s exécutent en parallèle. Cette exécution résulte deux types de relations

Plus en détail

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Partie 5 : Les processus Ordonnancement des processus Jalil BOUKHOBZA UBO / Lab-STICC Email : boukhobza@univ-brest.fr Partie 5 : Ordonnancement des processus 1

Plus en détail

QCM systèmes d exploitation (Quarante questions)

QCM systèmes d exploitation (Quarante questions) QCM systèmes d exploitation (Quarante questions) QUIZZ OS N 1 (10 questions avec réponses) Question 1: Aux origines de l informatique, l'interface utilisateur des systèmes d exploitations était composée

Plus en détail

D un point de vue système, ajuster la mémoire est l une des principales méthodes pour augmenter ou réduire les performances d un processus.

D un point de vue système, ajuster la mémoire est l une des principales méthodes pour augmenter ou réduire les performances d un processus. GESTION DE LA MEMOIRE SOUS UNIX La mémoire est une ressource critique car elle conditionne les temps de traitements. Différentes options SAS sont disponibles pour utiliser au mieux la mémoire de la machine.

Plus en détail

Les clusters Linux. 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com. white-paper-cluster_fr.sxw, Version 74 Page 1

Les clusters Linux. 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com. white-paper-cluster_fr.sxw, Version 74 Page 1 Les clusters Linux 4 août 2004 Benoît des Ligneris, Ph. D. benoit.des.ligneris@revolutionlinux.com white-paper-cluster_fr.sxw, Version 74 Page 1 Table des matières Introduction....2 Haute performance (High

Plus en détail

Par le service des publications Citrix. Citrix Systems, Inc.

Par le service des publications Citrix. Citrix Systems, Inc. Licences : présentation de l architecture Par le service des publications Citrix Citrix Systems, Inc. Avis Les informations contenues dans cette publication peuvent faire l'objet de modifications sans

Plus en détail

Windows NT4. Comment créer un compte utilisateur?

Windows NT4. Comment créer un compte utilisateur? Windows NT4 L administrateur est la personne qui a le plus de pouvoirs sur la station de travail, il pourra gérer : La gestion des stratégies de sécurité La gestion des comptes ( utilisateurs ) La gestion

Plus en détail

Claude Kaiser Machine virtuelle et environnement utilisateur SRI_B CHAPITRE 1

Claude Kaiser Machine virtuelle et environnement utilisateur SRI_B CHAPITRE 1 CHAPITRE 1 FOURNIR À L'UTILISATEUR UNE MACHINE VIRTUELLE ET UN ENVIRONNEMENT D'EXÉCUTION DE PROGRAMMES Plan ENVIRONNEMENT DE TRAVAIL ADAPTÉ AU BESOIN DE L'UTILISATEUR Fonctions de l'environnement d'exécution

Plus en détail

Chapitre 4. Gestion des processus. 4.1 Introduction. 4.2 Notion de processus

Chapitre 4. Gestion des processus. 4.1 Introduction. 4.2 Notion de processus 4.1 Introduction Dans un système multitâche, la ressource la plus importante d une machine est le processeur. Cette ressource est allouée à un et un processus sélectionné parmi un ensemble des processus

Plus en détail

Haute disponibilité et répartition de charge avec Sympa

Haute disponibilité et répartition de charge avec Sympa Haute disponibilité et répartition de charge avec Sympa David Verdin RENATER c/o Centre de Ressources Informatiques 263 Avenue du General Leclerc CS 74205 Campus de Beaulieu 35042 Rennes CEDEX Serge Aumont

Plus en détail

Systèmes d exploitation Gestion des processus

Systèmes d exploitation Gestion des processus Systèmes d exploitation Gestion des processus Didier Verna didier@lrde.epita.fr 5 décembre 2000 Table des matières Table des matières Généralités... 3 États d un processus... 4 Bloc de contrôle d un processus

Plus en détail

Les systèmes RAID Architecture des ordinateurs

Les systèmes RAID Architecture des ordinateurs METAIS Cédric 2 ème année Informatique et réseaux Les systèmes RAID Architecture des ordinateurs Cédric METAIS ISMRa - 1 - LES DIFFERENTS SYSTEMES RAID SOMMAIRE INTRODUCTION I LES DIFFERENTS RAID I.1 Le

Plus en détail

Projet de Veille Technologique

Projet de Veille Technologique Projet de Veille Technologique Programmation carte à puce - JavaCard Ing. MZOUGHI Ines (i.mzoughi@gmail.com) Dr. MAHMOUDI Ramzi (mahmoudr@esiee.fr) TEST Sommaire Programmation JavaCard Les prérequis...

Plus en détail

Projet OpNet. Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET

Projet OpNet. Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET Projet OpNet Spécialité Réseaux 2003/2004 Yannick GRENZINGER Loic JAQUEMET 1Présentation...3 1.1Le besoin de mobilité...3 1.2Le protocole IP Mobile...4 1.3Opnet...5 1.4Le projet...6 2La réalisation du

Plus en détail

progecad NLM Guide de l'utilisateur

progecad NLM Guide de l'utilisateur progecad NLM Guide de l'utilisateur Rev. 11.1 Table des matières Table des matières...2 Introduction...3 Comment démarrer...3 Installation de progecad NLM server...3 Enregistrement de progecad NLM server...3

Plus en détail

Modélisation conceptuelle des Systèmes Distribués

Modélisation conceptuelle des Systèmes Distribués Modélisation conceptuelle des Systèmes Distribués Eric Cariou Master Technologies de l'internet 1 ère année Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Systèmes

Plus en détail

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES 1 DECOUVERTE DE LA VIRTUALISATION... 2 1.1 1.2 CONCEPTS, PRINCIPES...2 UTILISATION...2 1.2.1 Formation...2

Plus en détail

Prise de contrôle à distance de PC

Prise de contrôle à distance de PC Prise de contrôle à distance de PC VNC = Virtual Network Computing Il sagit de prendre très facilement le contrôle d'un PC à distance en utilisant un programme performant. Par exemple, si vous souhaitez

Plus en détail

Contribution à la mise en service d'une ferme de serveurs connectée à une grille de calcul pour la physique des hautes énergies

Contribution à la mise en service d'une ferme de serveurs connectée à une grille de calcul pour la physique des hautes énergies Contribution à la mise en service d'une ferme de serveurs connectée à une grille de calcul pour la physique des hautes énergies Charlier Fabrice 2è licence en informatique Année Académique 2005-2006 Plan

Plus en détail

LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010.

LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010. Guillaume ANSEL M2 ISIDIS 2009-2010 / ULCO Dossier d étude sur la virtualisation LA VIRTUALISATION 18/01/2010 Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques.

Plus en détail

G. Méthodes de déploiement alternatives

G. Méthodes de déploiement alternatives Page 32 Chapitre 1 - Le fichier MigUser.xml permet de configurer le comportement d'usmt lors de la migration des comptes et profils utilisateurs (capture et restauration). - Le fichier config.xml permet

Plus en détail