DI-4 Année Notes de Cours. Parallélisme. Notes : Auteur du Cours : Florent Renault

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

Download "DI-4 Année 2007-2008. Notes de Cours. Parallélisme. Notes : Auteur du Cours : Florent Renault"

Transcription

1 École Polytechnique de l Université de Tours 64, Avenue Jean Portalis TOURS, FRANCE Tél. (33) Fax (33) DI-4 Année Notes de Cours Parallélisme Notes : Auteur du Cours : Florent Renault Carl Esswein Jérôme Mocquillon Université François Rabelais, Tours Version du 30 octobre 2007

2 Table des matières 1 Introduction au Parallélisme Introduction Besoin Architectures : classification de Flynn Deux modèles de parallélisme Quel est le problème? Programme, processus et thread Définitions et hypothèses de travail (Rappels du cours de SE) Spécification du parallélisme Graphe de précédence FORK et JOIN (Conway, 63) Concurrent Statement Comparaison rapide La condition de simultanéité de Bernstein (1966) Le problème (central!) de la section critique Définitions Proprités d une solution (Dijkstra, 1965) Les solutions élémentaires Deux processus en concurrence Exclusion mutuelle à n processus en centralisé Les solutions bas niveau Le masquage des interruptions pour une machine monoprocesseur Pour le multiprocesseur Instructions d échange (swap) Instruction de test de modification Autre instruction Le sommeil et l activation Les sémaphores Définitions Utilisation Autre présentation des sémaphores Propriétés Illustration des propriétés des sémaphores Prod/Conso avec Sémaphore Les solutions de haut-niveau : Les moniteurs de Hoore Exemple : Le Prod/Conso Exemple en JAVA Exemple en C ii

3 CHAPITRE 1 Introduction au Parallélisme 1.1 Introduction Besoin En deux mots, il s agit de faire faire plusieurs choses simultanément à des processeurs/ordi, un processeur/ordi. Les problèmes de parallélisme ont été étudiés dans les années 60 dans le cadre de développements de SE...mais la nécessité d étudier ces problèmes n est pas restreinte à ces développements. Deux types de parallélisme cohabitent : le parallélisme souhaité et le parallélisme nécessaire. Dans le 1er cas, on cherche à paralléliser, par exemple, pour obtenir un gain de performance par rapport à une éxecution séquentielle. Exemple : Compression JPEG de fichiers, essayons d utiliser 40 processeurs plutôt qu un seul. On s attend à diviser le temps de calcul par le nombre de processeurs mais c est loin d être le cas dans la pratique, notament à cause des inévitables temps de communication. il existe même des cas où on perd du temps! La granularité de notre système est un élément clé à prendre en compte. Granularité : Ordre de grandeur des durées d éxecution/ordre de grandeur des durées de communication. Dans le second cas, ce sont les contraintes du système qui imposent le parallélisme. Exemple : lecteur MP3 : lire un fichier, envoyer le flux sur la carte son, lire les tags... NB : Attention à bien faire la disctinction entre parallélisme physique et parallélisme logique. Fig. 1.1 Parallélisme Physique (gauche) et Parallélisme Logique (droite) Architectures : classification de Flynn On distingue 4 architectures sur lesquelles vos programmes parallèles vont s éxecuter : 1

4 1.1 Introduction 2 SISD : Single Instruction Single Data La plupart des ordinateurs personnels entrent dans cette classe. Un seul processeur travaille sur une seule source de données. MISD : Multiple Instruction Single Data Plusieurs traitements simultanés effectués en parallèle sur une seule source de données. Intérêt thérorique. SIMD : Single Instruction Multiple Data La même instruction est éxexutée par plusieurs processeurs sur plusieurs sources de données simultanément. MIMD : Multiple Instruction Multiple Data Systèmes capables d éxécuter plusieurs instructions sur des données différentes. Exemple : grappes d ordinateurs. Dans la suite, aucune hypothèse n est faite sur l architecture sur laquelle vont s éxécuter les programmes parallèles Deux modèles de parallélisme Sur ces 4 types d architectures peuvent être mise en oeuvre 2 modèles de parallélisme : 1. Un modèle où les différents traitements effectués en parallèle disposent d une mémoire partagée. 2. Un modèle où les processus exécutés en parallèle communiquent par échanges de messages. Dans la suite du cours, on ne verra que le 1er modèle Quel est le problème? Utopie : Disposer d une moulinette pour paralléliser un programme séquentiel quelconque sur un nombre de processeurs donnés. Paralléliser, c est exprimer les éxécutions parallèles (qu est-ce qui s éxécute en parallèle de quoi?)...en évitant les embûches. Parfois, la parallélisation à effectuer sera évidente (Exemple : on a 100 PC identiques sur un réseau ultra haut débit, et 10k traitements longs, indépendants à effectuer). Parfois, elle sera impossible (Exemple : calculer a( ) sachant que a(0) = x, a(1) = y et a(k + 2) = f(a(k), a(k + 1)))...et parfois...on ne pourra rien dire de trivial. Il faut prendre en compte : les synchronisations des différentes éxécutions (RDV(?), barrières,...) les communications entre elles le partage des ressources ( Problème de la section critique, accessible en exclusion mutuelle)

5 1.2 Programme, processus et thread 3 Exemple : On veut modéliser un carrefour routier avec priorités à droite, à l heure de pointe, à Paris. Un processus = un chauffeur de 38 tonnes. On a 4 files, quasiment infinie, de camions (38T). Quel code proposeriez-vous pour modéliser le(s) chauffeur(s) du(des) 38T...qui respectent le code de la route. Ex1 : Je passe Ex2 : Je ne passe pas Ex3 : Si j ai quelqu un à ma droite, je le laisse passer. Sinon, je passe. ça fonctionne? Les problèmes potentiels qui nous guettent : les interblocages : plusieurs processus sont définitivement bloqués, chacun étant en attente d une ressource détenue par un autre. les famines : un processus est dans une situation l empêchant définitivement d obtenir la ressource qu il requiert. (Exemple : route nationale, moins de monde, un cédez le passage...un tracteur.) la non-équité : tous les processus ne sont pas égaux devant l utilisation des ressources. (Exemple : les camions de chez Michaud ne sont pas prioritaires sur les autres!) la perte de cohérence des données : les données partagées entre les différents processus doivent conserver une cohérence globale quoi qu il arrive. la perte de temps : mauvaise granularité, anomalie de parallélisme...) 1.2 Programme, processus et thread Définitions et hypothèses de travail (Rappels du cours de SE) Processus : Image en cours de l éxecution d un programme. A un programme peuvent être associés plusieurs processus. Chaque processus dispose d une zone mémoire qui lui est propre, mais tous partagent l accès au processeur, au disque, aux autres périphériques... Thread : (ou processus léger ) Fil d éxecution dans un processus. à un processus peuvent donc être associés plusieurs threads, qui vont éxécuter leurs instructions indépendement les uns des autres. Mais quasi tous les threads d un même processus partagent la même zone mémoire! Un processus peut se trouver dans 3 états : ACTIVABLE, ACTIF, NON-ACTIVABLE. Soit il utilise le processeur, soit il ne l utilise pas, mais il est prêt, soit il est (+ ou - temporairement) bloqué en attente d une ressource. De la même manière, un thread peut se trouver dans plusieurs états différents, selon qu il ait le processeur ou non, qu il soit en attente d une ressource ou non...

6 1.3 Spécification du parallélisme 4 Dans toute la suite, on parlera de processus mais le discours sera le même avec les threads. On parlera de ressource pour parler d un périphérique, d une zone mémoire ou toute autre ressource + ou - partagée. 1.3 Spécification du parallélisme Exprimer les exécutions parallèles commence par déterminer, parmi l ensemble des tâches que doit accomplir le programme parallèle, les liens qui relient celles-ci. En fonction de ces liens, certaines possibilités de parallélisations apparaissent Graphe de précédence Il sert à représenter les relations d ordre d éxécution entre différents processus. Définition : Un graphe de précédence est un graphe orienté sans cycle dont les somments sont les processus et les arcs sont les relations de précédences. Un arc de Si à Sj signifie que l éxécution de Sj ne peut pas commencer avant que l éxécution de Si soit terminée. Exemple : 4 processus S1 : x 1 y 2 z 3 S2 : a x + y S3 : b z + 1 S4 : c a + b Fig. 1.2 Graphe (bien) et Cycle (beurk) A partir de la structure de précédence du programme parallèle, il est nécessaire de pouvoir exprimer sous forme algorihtmique, ce programme. Nous allons voir deux formalismes.

7 1.3 Spécification du parallélisme FORK et JOIN (Conway, 63) Exemple : Le graphe de précédence : va s exprimer :

8 1.3 Spécification du parallélisme 6 Expression algorithmique : compteur 2; S1; FORK L1; S2; GOTO L2; L1 : S3; L2 : JOIN compteur; S4; FORK : Une des deux exécutions parallèles commence à l instruction qui porte l étiquette L1, tandis que l autre commence à l instrcution qui suit le FORK. JOIN : A chaque fois qu une instruction JOIN compteur ; est éxécutée, la variable compteur est décrémentée. L éxécution (une seule!) se poursuit au delà du JOIN lorsque compteur==0. NB : Le FORK et la variable compteur sont complétement indépendantes! Remarques : Cette technique/formalisme bénéficie des inconvéients de l utilisation de l instruction GOTO : difficultés de contrôler l évolution de l éxécution d un (large) ensemble de processus. Les opérations FORK et JOIN doivent être considérées comme atomique (utilisent 1 seul cycle machine : inintérruptibles) Formalisme algorithmique différent des techniques utilisées pour l implémentation effective (ex : fork() d UNIX) Concurrent Statement Avec cette syntaxe, le graphe suivant :

Parallélisme. Cours 1

Parallélisme. Cours 1 Parallélisme Cours 1 TD : 20% - TP : 30% - Examen : 50% Feuille A4 manuscrite (pas de photocopie) Fabrice.Huet@etu.unice.fr (prendre rdv par mail pr le contacter) A quoi sert le parallélisme? Augmenter

Plus en détail

Interblocages. Chapitre 7. 7.1 Les processus et les ressources

Interblocages. Chapitre 7. 7.1 Les processus et les ressources Chapitre 7 Interblocages 7.1 Les processus et les ressources L exécution d un processus nécessite un ensemble de ressources (mémoire principale, disques, fichiers, périphériques, etc.) qui lui sont attribuées

Plus en détail

Calculs parallèles et Distribués. Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benmoussa@gmail.com

Calculs parallèles et Distribués. Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benmoussa@gmail.com Calculs parallèles et Distribués Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benmoussa@gmail.com Calculs parallèles et Distribués Introduction Parallélisation sur mémoire distribuée.

Plus en détail

Samia Bouzefrane. Maître de Conférences CEDRIC CNAM. samia.bouzefrane@cnam.fr http://cedric.cnam.fr/~bouzefra

Samia Bouzefrane. Maître de Conférences CEDRIC CNAM. samia.bouzefrane@cnam.fr http://cedric.cnam.fr/~bouzefra La La communication et et la la synchronisation inter-tâches Samia Bouzefrane Maître de Conférences CEDRIC CNAM samia.bouzefrane@cnam.fr http://cedric.cnam.fr/~bouzefra 1 Sommaire Introduction aux problèmes

Plus en détail

Programmation des systèmes réparties

Programmation des systèmes réparties Programmation des systèmes réparties Frédéric Gava (MCF) gava@univ-paris12.fr LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne 61 avenue du Général de Gaulle 94010 Créteil cedex

Plus en détail

Cours Systemes d exploitation

Cours Systemes d exploitation Université de Kairouan Institut Supérieur des Siences Appliquées et de Technologie Cours Conçu Spécialement Aux Etudiants: De Master Pilotage et Réseaux Industriels Cours Systemes d exploitation Noureddine

Plus en détail

Résumé du chapitre 8 Ressources et interblocage

Résumé du chapitre 8 Ressources et interblocage Résumé du chapitre 8 Ressources et interblocage Jacques Mossière 12 août 2004 1 Introduction Ce chapitre est consacré à l étude d un problème classique dans les systèmes, l interblocage, c est à dire l

Plus en détail

Gestion autonome de flots d exécution événementiels

Gestion autonome de flots d exécution événementiels Gestion autonome de flots d exécution événementiels Fabien GAUD, M2R S&L Équipe SARDES (INRIA/LIG) 18 juin 2007 1 / 31 Sommaire 1 Introduction 2 État de l art 3 Contribution 4 Évaluation de performances

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

Système M1. Chapitre 3 : Gérer la communication et la synchronisation inter-tâches. J.-F. Pradat-Peyre & E Hyon

Système M1. Chapitre 3 : Gérer la communication et la synchronisation inter-tâches. J.-F. Pradat-Peyre & E Hyon Chapitre 3 : Gérer la communication et la synchronisation inter-tâches 1 Plan du cours Introduction aux problèmes de synchronisation Exemple de problèmes Section critique et verrous Exclusion Mutuelle

Plus en détail

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

Synchronisation des processus. Didier Verna. didier@lrde.epita.fr http://www.lrde.epita.fr/ didier. Systèmes d Exploitation. Didier Verna EPITA 1/16 Synchronisation des processus didier@lrde.epita.fr http://www.lrde.epita.fr/ didier 2/16 Table des matières 1 2 Synchronisation matérielle 3 Synchronisation logicielle 4 classiques 4/16 Nécessité

Plus en détail

Parallélisation. Parallélisation. 1 Applications. 2 Historique. 3 Parallélisme au niveau du circuit. 4 Coprocesseur.

Parallélisation. Parallélisation. 1 Applications. 2 Historique. 3 Parallélisme au niveau du circuit. 4 Coprocesseur. Parallélisation 1 Applications 2 Historique 3 Parallélisme au niveau du circuit 4 Coprocesseur 5 Multiprocesseur 6 Multi-ordinateur 7 grille (Université Bordeaux 1) Architecture de l Ordinateur 2007-2008

Plus en détail

Ecole Mohammadia d Ingénieurs Systèmes Répartis Pr. Slimane Bah, ing. PhD G. Informatique Semaine 16

Ecole Mohammadia d Ingénieurs Systèmes Répartis Pr. Slimane Bah, ing. PhD G. Informatique Semaine 16 Ecole Mohammadia d Ingénieurs Systèmes Répartis Pr. Slimane Bah, ing. PhD G. Informatique Semaine 16 1 Semestre 4 : Fev. 2015 Ateliers Beowolf ou Mosix Atelier Type Cluster Vishwa http://dos.iitm.ac.in/vishwanew

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

Question 1 (5 pts ) : Généralités

Question 1 (5 pts ) : Généralités Question 1 (5 pts ) : Généralités Répondez, en 5 lignes maximum, aux questions suivantes : a) Expliquez brièvement pourquoi les «threads» sont aussi appelés processus légers? Un threads est rattaché à

Plus en détail

Cours A7 : Temps Réel

Cours A7 : Temps Réel Cours A7 : Temps Réel Pierre.Paradinas / @ / cnam.fr Cnam/Cedric Systèmes Enfouis et Embarqués (SEE) Motivations Du jour : Partage des ressources, L exclusion mutuelle, Synchronisation. Comprendre les

Plus en détail

Conduite du Projet Système

Conduite du Projet Système Conduite du Projet Système Département Télécom 2ème Année Enseignants : Yves Denneulin, Jacques Mossière, Grégory Mounié, Simon Nieuviarts, Franck Rousseau, Sébastien Viardot Résumé Ce document est complémentaire

Plus en détail

École Polytechnique de Montréal. Département de Génie Informatique. Cours INF3600 : Systèmes d exploitation. Contrôle périodique Automne 2001

École Polytechnique de Montréal. Département de Génie Informatique. Cours INF3600 : Systèmes d exploitation. Contrôle périodique Automne 2001 École Polytechnique de Montréal Département de Génie Informatique Cours INF3600 : Systèmes d exploitation Contrôle périodique Automne 2001 Date : 1 er novembre 2001 de 18h à 20h Professeurs : Kerly Titus,

Plus en détail

INTRODUCTION À L ALGORITHMIQUE

INTRODUCTION À L ALGORITHMIQUE INTRODUCTION À L ALGORITHMIQUE Table des matières 1. Introduction 1 2. Les éléments de base d un algorithme simple 2 2.1. Préparation du traitement 2 2.2. Le traitement 2 2.3. La sortie des résultats 2

Plus en détail

Cours #2 Synchronisation dans un OS multitâches

Cours #2 Synchronisation dans un OS multitâches ELE- Ordinateurs et programmation système Cours #2 Synchronisation dans un OS multitâches Bruno De Kelper Site internet : http://www.ele.etsmtl.ca/academique/ele/ Cours # 2 ELE - Ordinateurs et programmation

Plus en détail

ENTRETIEN D AUTOCONFRONTATION. Entretien entre Christelle (C) et le technicien informatique expert, David (D)

ENTRETIEN D AUTOCONFRONTATION. Entretien entre Christelle (C) et le technicien informatique expert, David (D) ENTRETIEN D AUTOCONFRONTATION Entretien entre Christelle (C) et le technicien informatique expert, David (D) Durée de l entretien : 14mn C : Alors, est-ce que tu peux d abord te présenter et dire en quoi

Plus en détail

Cours Systèmes d'exploitation, Dalila Souilem, ISITC, département informatique.

Cours Systèmes d'exploitation, Dalila Souilem, ISITC, département informatique. Plan du cours I Présentation générale des systèmes d'exploitation II Généralités sur UNIX / historique III Les bases du système 1. Système de fichiers (SGF) et commandes associées 2. Processus et commandes

Plus en détail

Prendre un bon départ

Prendre un bon départ Chapitre A Prendre un bon départ 1 - Avant-propos Un ordinateur sait très bien faire deux choses : Calculer, d oùle nomcomputer en anglais que l on pourrait traduire par calculateur. Placer des données

Plus en détail

Explication succincte des opérations sur les répertoires

Explication succincte des opérations sur les répertoires Les données et les documents stockés sur votre PC sont enregistrés sur un ou plusieurs disques durs. Même si votre machine ne contient physiquement qu un seul disque dur, il peut se faire qu il soit divisé

Plus en détail

2 ème partie : Programmation concurrente multi-thread

2 ème partie : Programmation concurrente multi-thread 2 ème partie : Programmation concurrente multi-thread TC-INFO-ASR4 Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : www-mips.unice.fr/~baude

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

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

La machine à diviser de Monsieur Pascal

La machine à diviser de Monsieur Pascal prologue La machine à diviser de Monsieur Pascal Àdiviser? vous dites-vous, ne s agit-il pas plutôt de la «Pascaline», la machine à additionner que le jeune Blaise construisit pour soulager son père dans

Plus en détail

Ce réseau local est relié au réseau Internet ; les postes peuvent donc éventuellement accéder à ce réseau mondial.

Ce réseau local est relié au réseau Internet ; les postes peuvent donc éventuellement accéder à ce réseau mondial. Utiliser la salle sous SolSTICE 1 11.. Géénnéérraal littééss.. Votre salle informatique est en réseau, ce qui signifie que toutes les machines sont physiquement reliées entre elles. On parle de réseau

Plus en détail

Communications et synchronisations

Communications et synchronisations Communications et synchronisations Polytech Paris-Sud Cycle ingénieur de la filière étudiant Louis Mandel Université Paris-Sud 11 Louis.Mandel@lri.fr année 2012/2013 Le problème des philosophes (Dijkstra

Plus en détail

Parallélisme1. Problèmes du parallélisme et Outils permettant de les résoudre. M. Ould Braham. Master1 (DMI/FST Limoges) 1

Parallélisme1. Problèmes du parallélisme et Outils permettant de les résoudre. M. Ould Braham. Master1 (DMI/FST Limoges) 1 Parallélisme1 Problèmes du parallélisme et Outils permettant de les résoudre M. Ould Braham Master1 (DMI/FST Limoges) 1 Contenu du cours (9h, 6 Séances) Problèmes du parallélisme Modèles de fonctionnement

Plus en détail

Comment utiliser l outil " saison2011-2012 "?

Comment utiliser l outil  saison2011-2012 ? Comment utiliser l outil " saison2011-2012 "? Etape 0 : Vous avez reçu un courriel de ma part avec plusieurs fichiers joints. Ne détruisez pas ce mail : il vous sera utile en cas de problème. Je vous expliquerai

Plus en détail

Soit l ensemble de processus suivant, où les contraintes de précédence sont données par le graphe ci-dessous :

Soit l ensemble de processus suivant, où les contraintes de précédence sont données par le graphe ci-dessous : O r s a y Travaux Dirigés n o 3 : Sémaphores DUT Informatique 2010 / 2011 Objectifs : comprendre le concept de sémaphore, son utilité pour réaliser l exclusion mutuelle et savoir utiliser son implémentation

Plus en détail

NFP 121. Java et les Threads. Présentation : Thierry Escalarasse Mai 2007

NFP 121. Java et les Threads. Présentation : Thierry Escalarasse Mai 2007 NFP 121 Java et les Threads Présentation : Thierry Escalarasse Mai 2007 Plan du cour Présentation de la notion de Threads La classe Thread L interface Runnable Les états d un thread La Synchronisation

Plus en détail

CONSERVATOIRE NATIONAL DES ARTS ET METIERS METHODES DE PROGRAMMATION SYSTEMES UE NSY103 NANCY/METZ

CONSERVATOIRE NATIONAL DES ARTS ET METIERS METHODES DE PROGRAMMATION SYSTEMES UE NSY103 NANCY/METZ CONSERVATOIRE NATIONAL DES ARTS ET METIERS Durée : 2 heures METHODES DE PROGRAMMATION SYSTEMES UE NSY103 NANCY/METZ CORRECTION DE L'EXAMEN DE RATTRAPAGE de SEPTEMBRE 2012 Année 2011 2012, deuxième semestre

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

Algorithmique Distribuée

Algorithmique Distribuée Algorithmique Distribuée Problèmes et Algorithmes Fondamentaux Arnaud labourel http://pageperso.lif.univ-mrs.fr/ arnaud.labourel Aix-Marseille Université 15 janvier 2014 Arnaud Labourel (AMU) Algorithmique

Plus en détail

Corrigé de l examen de systèmes opératoires Module Synchronisation des processus

Corrigé de l examen de systèmes opératoires Module Synchronisation des processus Corrigé de l examen de systèmes opératoires Module Synchronisation des processus 2ième Année Informatique et Mathématiques Appliquées 17 Novembre 1999 1 Les sémaphores 1. Donner la définition d un sémaphore

Plus en détail

Architectures parallèles

Architectures parallèles Architectures parallèles GIF-1001 Ordinateurs: Structure et Applications, Hiver 2015 Jean-François Lalonde Image: Michael Thompsett Merci à Étienne Tremblay Architecture parallèle Architecture parallèle:

Plus en détail

Ministère de l'enseignement supérieur et recherche scientifique. Institut Supérieur des Etudes Technologiques du KEF. Département RAPPORT DE

Ministère de l'enseignement supérieur et recherche scientifique. Institut Supérieur des Etudes Technologiques du KEF. Département RAPPORT DE Ministère de l'enseignement supérieur et recherche scientifique Institut Supérieur des Etudes Technologiques du KEF Département RAPPORT DE STAGE DE PERFECTION Elaboré par Prénom NOM Encadré par : Mr Prénom

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

Système d exploitation (Operating System)

Système d exploitation (Operating System) Système d exploitation (Operating System) I. Introduction 1. Définition Système d exploitation : ensemble de programmes pour : Faciliter l utilisation de l ordinateur (ergonomie) Mettre à la disposition

Plus en détail

Multi-processeurs, multi-cœurs, cohérence mémoire et cache

Multi-processeurs, multi-cœurs, cohérence mémoire et cache Multi-processeurs, multi-cœurs, cohérence mémoire et cache Intervenant : Thomas Robert Institut Mines-Télécom Parallélisme inter instructions n Exécution : une séquence d instructions appliquées à un 1

Plus en détail

M2-GamaGora. Programmation Multi-Thread - partie 1. J.C. Iehl. November 13, 2008

M2-GamaGora. Programmation Multi-Thread - partie 1. J.C. Iehl. November 13, 2008 Programmation Multi-Thread - partie 1 November 13, 2008 pourquoi ça ne marche pas? et alors? introduction aux threads threads : pourquoi ça ne marche pas? et alors? un nouveau point d entrée (une fonction

Plus en détail

Sujets de projet de Langages de Spécification. Catalin Dima

Sujets de projet de Langages de Spécification. Catalin Dima Sujets de projet de Langages de Spécification Catalin Dima Cadre général Chaque sujet demande la modélisation en NuSMV d une spécification décrite en français, plus la vérification de trois formules LTL,

Plus en détail

Projet (partie graphes)

Projet (partie graphes) Projet (partie graphes) G. Richomme gwenael.richomme@univ-montp3.fr Université Paul Valéry Montpellier 3 Licence AES parcours Misahs cours 2013-2014 1 Objectifs et MCC Objectifs : construire une (mini-)application

Plus en détail

Synchronisation et communication entre processus

Synchronisation et communication entre processus Synchronisation et communication entre processus Interblocage et coalition Joëlle Delacroix AMSI1999/2000 1 INTRODUCTION Système multiprocessus L'ordonnancement "entrelace" les exécutions P1 P2 P3 Processus

Plus en détail

Introduction à l Informatique

Introduction à l Informatique Introduction à l Informatique. Généralités : Etymologiquement, le mot informatique veut dire «traitement d information». Ceci signifie que l ordinateur n est capable de fonctionner que s il y a apport

Plus en détail

Tp WinDev Numéro 3. Objectifs : Travailler avec un fichier de données : Pré requis : TP WinDev Numéro 1 et 2

Tp WinDev Numéro 3. Objectifs : Travailler avec un fichier de données : Pré requis : TP WinDev Numéro 1 et 2 Tp WinDev Numéro 3 Objectifs : Travailler avec un fichier de données : Etude du gestionnaire d analyse, Manipulation des tables mémoires, Manipulation de données, Création d états, Pré requis : TP WinDev

Plus en détail

Travail Personnel Encadré

Travail Personnel Encadré Travail Personnel Encadré Recherche bibliographique Alain Boucher - IFI Page 1 Etapes d un processus de recherche (1) Enoncé et analyse du problème de recherche (2) Recherche bibliographique (3) Solution

Plus en détail

Chapitre 4 : Exclusion mutuelle

Chapitre 4 : Exclusion mutuelle Chapitre 4 : Exclusion mutuelle Pierre Gançarski Juillet 2004 Ce support de cours comporte un certain nombre d erreurs : je décline toute responsabilité quant à leurs conséquences sur le déroulement des

Plus en détail

Parallélisme, Algorithmes PRAM

Parallélisme, Algorithmes PRAM , Armelle Merlin L.I.F.O Laboratoire d'informatique Fondamentale d'orléans Transparents inspirés des cours de G. Hains et de B. Virot Plan 1 Introduction Langages parallèles Les architectures parallèles

Plus en détail

INTRODUCTION... 3 ARCHITECTURE...

INTRODUCTION... 3 ARCHITECTURE... SOMMAIRE INTRODUCTION... 3 ARCHITECTURE... 4 CE QUI CHANGE POUR L'UTILISATEUR... 5 LE ROLE DE L'ADMINISTRATEUR... 5 LE MATERIEL... 5 CONFIGURATION SYSTEME... 6 DEPANNAGE... 7 DROITS DE L UTILISATEUR POUR

Plus en détail

Conclusions et Perspectives

Conclusions et Perspectives 8 Conclusions et Perspectives Ce chapitre conclut la thèse en donnant un bilan du travail effectué et les perspectives envisageables au terme de cette recherche. Nous rappelons tout d abord les principales

Plus en détail

Enveloppe HASP HL: Transparence Simplicité Avantages du système automatisé de protection des logiciels HASP HL

Enveloppe HASP HL: Transparence Simplicité Avantages du système automatisé de protection des logiciels HASP HL Enveloppe HASP HL: Transparence Simplicité Avantages du système automatisé de protection des logiciels HASP HL Document technique destiné aux développeurs de logiciels Sommaire Introduction... 1 Evaluation

Plus en détail

MEGA System Oriented IT Architecture. Guide d utilisation

MEGA System Oriented IT Architecture. Guide d utilisation MEGA System Oriented IT Architecture Guide d utilisation MEGA 2009 SP5 R7 2ème édition (août 2012) Les informations contenues dans ce document pourront faire l objet de modifications sans préavis et ne

Plus en détail

Points à coordonnées entières sur une droite! La valeur ajoutée du numérique Sommaire

Points à coordonnées entières sur une droite! La valeur ajoutée du numérique Sommaire Points à coordonnées entières sur une droite! La valeur ajoutée du numérique Sommaire 1. Tableau récapitulatif... 2 2. Enoncé et consigne données aux... 3 3. Objectifs et analyse a priori... 3 4. Scénario

Plus en détail

Systèmes d'exploitation Chapitre 3: Gestion de fichiers

Systèmes d'exploitation Chapitre 3: Gestion de fichiers Université Cadi Ayyad Faculté Polydisciplinaire de Safi Département sciences mathématiques et informatique Systèmes d'exploitation Chapitre 3: Gestion de fichiers Le stockage fiable, rapide de grandes

Plus en détail

Communications et synchronisations. Système L3, 2014-2015 1/21

Communications et synchronisations. Système L3, 2014-2015 1/21 Communications et synchronisations Système L3, 2014-2015 1/21 Le problème des philosophes (Dijkstra 1965) Cinq philosophes sont assis autour d une table ronde Chaque philosophe a devant lui un plat de

Plus en détail

Diagramme d activités

Diagramme d activités Diagramme d activités Présentation Un diagramme d activité est un diagramme UML qui modélise les aspects dynamiques d un système C est une simplification du diagramme d état transitions permettant de modéliser

Plus en détail

École Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique.

École Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique. École Polytechnique de Montréal Département de Génie Informatique et Génie Logiciel Cours INF2610 Contrôle périodique Automne 2013 Date : 11 octobre 2013 de 18h à 20h Professeur : Boucheneb Hanifa Documentation

Plus en détail

Module OMGL - ModDyn

Module OMGL - ModDyn Module OMGL - ModDyn Modélisation de la dynamique modèle ETAT-TRANSITION J. Christian Attiogbé Février 2009, maj avril 2012 J. Christian Attiogbé (Février 2009, maj avril 2012) Module OMGL - ModDyn 1 /

Plus en détail

Le parallélisme en Java

Le parallélisme en Java Chapitre 7 Le parallélisme en Java L espoir du parallélisme est de pouvoir faire exécuter plusieurs tâches à un ordinateur (avec plusieurs processeurs). Ceci trouve un début d application sur certains

Plus en détail

Fiche Technique. Terminologie : Utilisation de dl.free.fr (Ce n est pas la meilleure technique) Envoyez des fichiers de gros stockage

Fiche Technique. Terminologie : Utilisation de dl.free.fr (Ce n est pas la meilleure technique) Envoyez des fichiers de gros stockage Terminologie : Boitier ADSL nommé ici Boitier HD nommé ici Freebox FreeboxTV ou HDboxTV Nous souhaitons résoudre 3 problèmes. 1. Connecter les plugs-in d alimentation et de communication en CPL 2. Stocker

Plus en détail

Introduction aux systèmes d exploitation TP 2 Manipulation de processus

Introduction aux systèmes d exploitation TP 2 Manipulation de processus Introduction aux systèmes d exploitation TP 2 Manipulation de processus On appelle processus un objet dynamique correspondant à l exécution d un programme ou d une commande Unix. Cet objet recense en particulier

Plus en détail

INTERVIEW D'UN CHERCHEUR PAR DES ELEVES DU CYCLE 3

INTERVIEW D'UN CHERCHEUR PAR DES ELEVES DU CYCLE 3 INTERVIEW D'UN CHERCHEUR PAR DES ELEVES DU CYCLE 3 D'après le travail réalisé en 1996 pour son mémoire professionnel par Fabienne MARILL, professeur d'école. 1 Interview du chercheur par les C.E. 2 de

Plus en détail

Systèmes d'exploitation. Pierre Antoine Champin IUT A de Lyon Séance 4

Systèmes d'exploitation. Pierre Antoine Champin IUT A de Lyon Séance 4 Systèmes d'exploitation Pierre Antoine Champin IUT A de Lyon Séance 4 Plan de la séance 1. Concurrence 2. Problématique liée à la concurrence section critique mécanisme d'exclusion mutuelle 3. Solutions

Plus en détail

Enregistrer de la musique sur son PC à partir d un CD du commerce. SOMMAIRE :

Enregistrer de la musique sur son PC à partir d un CD du commerce. SOMMAIRE : SOMMAIRE : INTRODUCTION - Objectifs - A savoir avant de commencer 1) CONFIGURER SON ORDINATEUR POUR QUE WINDOWS MEDIA SOIT AUTOMATIQUEMENT CHOISI. 2) OU RANGER SA MUSIQUE SUR L ORDINATEUR? 3) COPIER UN

Plus en détail

Examen 2. Q1 (3 points) : Quel mot ou concept relié aux ordinateurs correspond à la définition suivante :

Examen 2. Q1 (3 points) : Quel mot ou concept relié aux ordinateurs correspond à la définition suivante : GI-1001, 24 avril 2012 Nom/Matricule : Examen 2 Cet examen vaut 40% de la note totale du cours. Les questions seront corrigées sur un total de 40 points. La valeur de chaque question est indiquée avec

Plus en détail

Analyse et mesure de performances du calcul distribué

Analyse et mesure de performances du calcul distribué Analyse et mesure de performances du calcul distribué Mohsine Eleuldj Département Génie Informatique, EMI eleuldj@emi.ac.ma CruCID Workshop, EMI, Rabat, 5 au 7 juillet 1999 Motivation Types d applications

Plus en détail

Installation de Windows 8 sur une machine virtuelle avec Parallels Desktop 7

Installation de Windows 8 sur une machine virtuelle avec Parallels Desktop 7 Installation de Windows 8 sur une machine virtuelle avec Parallels Desktop 7 Table des matières Installation de Windows 8 sur une machine virtuelle avec Parallels Desktop 7... 1 I Introduction... 2 II

Plus en détail

Ordinateur, système d exploitation

Ordinateur, système d exploitation Ordinateur, système d exploitation Skander Zannad et Judicaël Courant 2013-09-02 1 Ordinateur 1.1 Qu est-ce qu un ordinateur? C est une machine Servant à traiter de l information Programmable Universelle

Plus en détail

Mathématiques pour. l informatique

Mathématiques pour. l informatique Xavier Chanet Patrick Vert Mathématiques pour l informatique Pour le BTS SIO Toutes les marques citées dans cet ouvrage sont des marques déposées par leurs propriétaires respectifs. Illustration de couverture

Plus en détail

Problèmes liés à la concurrence

Problèmes liés à la concurrence ENS Cachan Problématique Difficile de gérer la concurrence : Pas toujours facile d avoir des fonctions réentrantes. Risque de race condition : ex : x :=x+1 x :=x+1 On voudrait des blocs d instructions

Plus en détail

synchronisation et communication entre processus Synchronisation et communication entre processus

synchronisation et communication entre processus Synchronisation et communication entre processus 1 Synchronisation et communication entre processus Accès à des ressources communes 2 Exemple: compte bancaire dont montant en A sur disque programme pour ajouter 100: lire(n,a) N := N+100 écrire(n,a) 2

Plus en détail

C09: Conception parallèle

C09: Conception parallèle méthodologie de conception en quatre étapes virtualisation applications structurées et non structurées aspect analytique: S, E Accélération Amdahl Accélération Gustafson Surcharge de parallélisation Conception

Plus en détail

CAPTURE DES MAILS PROFESSIONNELS

CAPTURE DES MAILS PROFESSIONNELS CAPTURE DES MAILS PROFESSIONNELS 2 Téléchargement 3 Installation 8 Prise en main rapide 11 Lancement Recherche 14 Gestion des fichiers 15 Recherche des adresses mails 16 Importation d un fichier d adresses

Plus en détail

Etape 2. PROCÉDURE DE MISE À JOUR du fichier élèves dans le logiciel CollegeEPS ou LyceeEPS

Etape 2. PROCÉDURE DE MISE À JOUR du fichier élèves dans le logiciel CollegeEPS ou LyceeEPS Etape 2. PROCÉDURE DE MISE À JOUR du fichier élèves dans le logiciel CollegeEPS ou LyceeEPS 1 L'importation du fichier élèves est nécessaire lorsque vous changez d'année scolaire. La mise à jour est également

Plus en détail

Université Paris Diderot Master 1 II. Théorie et pratique de la concurrence

Université Paris Diderot Master 1 II. Théorie et pratique de la concurrence Université Paris Diderot Master 1 II Théorie et pratique de la concurrence Partiel du 30 avril 2009 Durée : 1h30. Tous les documents sont autorisés. Le barème est indicatif. Question 1 : Soit le programme

Plus en détail

GUIDE D UTILISATION NOVEMBRE 2015

GUIDE D UTILISATION NOVEMBRE 2015 GUIDE D UTILISATION NOVEMBRE 2015 La Poste Société Anonyme au capital de 3.400.000.000euros 356 000 000 RCS PARIS Siège social : 44 BOULEVARD DE VAUGIRARD 75757 PARIS CEDEX 15 ColiPoste : 62 RUE CAMILLE

Plus en détail

encadrés par C. Attiogbé, S. Faucou

encadrés par C. Attiogbé, S. Faucou M4102C - Modélisation et construction des applications réparties MCAR (C. Attiogbé) - 2015/2016 Travaux dirigés/pratiques encadrés par C. Attiogbé, S. Faucou Cahier d exercices 1 - Modélisation avec les

Plus en détail

D après une idée originale de: N. Krantz Oct. 2009 - mise en forme: Février 2012

D après une idée originale de: N. Krantz Oct. 2009 - mise en forme: Février 2012 D après une idée originale de: N. Krantz Oct. 2009 - mise en forme: Février 2012 Mon objectif est de rejoindre Paris en partant de Bordeaux N. Krantz Mise en forme achevée le 26/2/2012 2 1 er niveau de

Plus en détail

Cours 2. Processus et ordonancement

Cours 2. Processus et ordonancement Cours 2 Processus et ordonancement PolyTECH - Système Thomas Lavergne Université Paris-Sud Définition 0A 2F D3 4F BA 78 21 FF A3 DA 99 00 45 D3 F2 BA Programme = séquence d'instructions Processeur = Automate

Plus en détail

10 contrats pour votre prochain Projet Logiciel Agile

10 contrats pour votre prochain Projet Logiciel Agile 10 contrats pour votre prochain Projet Logiciel Agile Auteur : Peter Stevens Son article du 29 avril 2009 : http://agilesoftwaredevelopment.com/blog/peterstev/10-agile-contracts Son blog : http://www.scrum-breakfast.com/

Plus en détail

CAPTURE DES PROFESSIONNELS

CAPTURE DES PROFESSIONNELS CAPTURE DES PROFESSIONNELS CAPTURE DES PROFESSIONNELS 2 Téléchargement 3 Installation 8 Prise en main rapide 10 Lancement Recherche 14 Gestion des fichiers 23 Compare et Sépare 25 Fichiers annexes 27 Le

Plus en détail

Bases de données avancées. cours 1 : introduction

Bases de données avancées. cours 1 : introduction Bases de données avancées cours 1 : introduction Plan Objectifs du cours Bases de données : utilisation Système de Gestion de Bases de données (SGBD) Architecture d un SGBD Ingénierie des bases de données

Plus en détail

Les outils Internet grand public de communication et les risques pour (le SI de) l entreprise

Les outils Internet grand public de communication et les risques pour (le SI de) l entreprise Les outils Internet grand public de communication et les risques pour (le SI de) l entreprise Jean-Luc Archimbaud CNRS/UREC http://www.urec.cnrs.fr EUROSEC 3 avril 2006 Intervention technique qui n est

Plus en détail

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1 INF6500 : Structures des ordinateurs Sylvain Martel - INF6500 1 Cours 4 : Multiprocesseurs Sylvain Martel - INF6500 2 Multiprocesseurs Type SISD SIMD MIMD Communication Shared memory Message-passing Groupe

Plus en détail

Histoire des arts : La naissance du cinéma à la fin du XIXe siècle

Histoire des arts : La naissance du cinéma à la fin du XIXe siècle Histoire des arts : La naissance du cinéma à la fin du XIXe siècle Exercice et méthode de recherche sur Internet Dans le cadre du thème Histoire des arts retenu pour la classe de 4 ( Mouvement et vitesse

Plus en détail

NBB.Stat Manuel d utilisation

NBB.Stat Manuel d utilisation NBB.Stat Manuel d utilisation Table des matières 1. INTRODUCTION... 3 1.1. QU EST-CE QUE NBB.STAT?... 3 1.2. DEMARRAGE... 3 1.3. AIDE... 3 1.4. CONCEPTS DE BASE... 3 2. TROUVER UN ENSEMBLE DE DONNEES...

Plus en détail

Synchronisation de Processus. Chapitre 5

Synchronisation de Processus. Chapitre 5 Synchronisation de Processus Chapitre 5 1 Synchronisation de Processus 1. Conditions de Concurrence 2. Sections Critiques 3. Exclusion Mutuelle 4. Sommeil & Activation 5. Sémaphores 6. Mutex 2 Concurrence

Plus en détail

Chiffrement Windows8 avec BitLocker

Chiffrement Windows8 avec BitLocker Chiffrement Windows8 avec BitLocker (P. Mora de Freitas RSSI Paris B 11/06/2013) Introduction Ce document a été produit à l occasion de l atelier «Chiffrement» organisé le 25/06/2013 à Paris B, conjointement

Plus en détail

Examen professionnel Développement d applications TIC

Examen professionnel Développement d applications TIC Examen professionnel Développement d applications TIC Informations sur l examen Pour chaque problème, le nombre maximal de points que vous pouvez obtenir en cas de bonne réponse est mentionné. Le nombre

Plus en détail

Brique BDL Gestion de Projet Logiciel

Brique BDL Gestion de Projet Logiciel Brique BDL Gestion de Projet Logiciel Processus de développement pratiqué à l'enst Sylvie.Vignes@enst.fr url:http://www.infres.enst.fr/~vignes/bdl Poly: Computer elective project F.Gasperoni Brique BDL

Plus en détail

Ministère de l enseignement supérieur et de la recherche scientifique. Direction Générale des Études Technologiques

Ministère de l enseignement supérieur et de la recherche scientifique. Direction Générale des Études Technologiques Ministère de l enseignement supérieur et de la recherche scientifique Direction Générale des Études Technologiques Institut Supérieur des Etudes Technologiques de SILIANA Département Technologies de l

Plus en détail

Comment faire rapidement un montage vidéo de vos photos et le coder en MPEG4 ou en MPEG2

Comment faire rapidement un montage vidéo de vos photos et le coder en MPEG4 ou en MPEG2 Comment faire rapidement un montage vidéo de vos photos et le coder en MPEG4 ou en MPEG2 D abord avoir les photos stockées à proximité dans un répertoire d un disque ou dans le réseau interne, cela va

Plus en détail

Cours IV: Le système de gestion de fichiers

Cours IV: Le système de gestion de fichiers Cours IV: Le système de gestion de fichiers Patrick MARTINEAU Ecole Polytechnique de l Université de Tours 64, Avenue Jean Portalis 37200 TOURS 1 er octobre 2008 P. Martineau (Polytech Tours) Cours IV:

Plus en détail

Maîtrise d'informatique 2003-2004 Algorithmique et Programmation Tous documents autorisés Durée 2h30

Maîtrise d'informatique 2003-2004 Algorithmique et Programmation Tous documents autorisés Durée 2h30 Maîtrise d'informatique 2003-2004 Algorithmique et Programmation Tous documents autorisés Durée 2h30 Module Programmation Concurrente, Réactive, Répartie Devoir sur table décembre 2003 Les exercices sont

Plus en détail

Plan du cours. - Introduction - Emergence et évolution des systèmes d exploitation - Système de fichiers : FAT - NTFS - Ordonnancement

Plan du cours. - Introduction - Emergence et évolution des systèmes d exploitation - Système de fichiers : FAT - NTFS - Ordonnancement Plan du cours - Introduction - Emergence et évolution des systèmes d exploitation - Système de fichiers : FAT - NTFS - Ordonnancement Systèmes d exploitation 1ère année p. 1 Ordonnancement - rappels -

Plus en détail

Introduction à la programmation concurrente

Introduction à la programmation concurrente Introduction à la programmation concurrente Exclusion mutuelle par attente active Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud

Plus en détail