Summary

This document contains two exercises on parallel programming and communication. The first exercise involves sorting a list of numbers using a pipeline of processes. The second considers generating prime numbers using process communication. The exercises focus on synchronization and Java solutions for these particular types of problems.

Full Transcript

TD Communication Synchrone Imene Lahyani Exercice 1 Il est possible de trier un tableau de n valeurs en utilisant un pipeline de n processus: Sort[0..n]. Initialement, Sort contient le tableau entier. Il examine les...

TD Communication Synchrone Imene Lahyani Exercice 1 Il est possible de trier un tableau de n valeurs en utilisant un pipeline de n processus: Sort[0..n]. Initialement, Sort contient le tableau entier. Il examine les éléments du tableau, retient le minimum et passe les autres au processus Sort. Un processus Sort[i] reçoit une séquence de valeurs de Sort[i-1], retient le plus petit d’eux et passe les autres au processus Sort[i+1]. Le dernier processus Sort[n-1] reçoit une valeur, qui doit être la plus grande du tableau original. Donnez une solution Java à ce problème en utilisant le passage de messages synchrone Exercice 2 Pour générer tous les nombres premiers compris entre 2 et n, on applique l’algorithme suivant : On écrit la liste de tous ces nombres : 2 3 4 5 6 …… n On commence par barrer tous les multiples de 2 sauf le 2 Ensuite, on barre tous les multiples de 3 sauf 3 On applique cette opération jusqu’à ce qu’on arrive à n Les nombres qui restent et ne sont pas barrés sont des nombres premiers. On se propose de trouver une solution à ce problème en utilisant une communication interprocessus par échange de message synchrone moyennant un pipeline de processus : Le premier processus, prime, envoi tous les nombres impairs compris entre 3 et n à prime. Le premier nombre p reçu par le processus prime [i] est un nombre premier. Chaque prime [i] passe tous les nombres reçus qui ne sont pas multiple de p à son successeur. Le nombre L de processus doit être suffisant grand de façon que tous les nombres premiers inférieurs à n soient générés. Trouvez une solution solution Java à ce problème en utilisant une communication interprocessus par échange de message synchrone

Use Quizgecko on...
Browser
Browser