• Aucun résultat trouvé

Exercice2:Parall´elisationetthreads Exercice1:Ordonnancement Aucundocumentn’estautoris´e Mercredi20Juin20121h30 ContrˆoleSyst`emesd’exploitation,R´eseaux

N/A
N/A
Protected

Academic year: 2022

Partager "Exercice2:Parall´elisationetthreads Exercice1:Ordonnancement Aucundocumentn’estautoris´e Mercredi20Juin20121h30 ContrˆoleSyst`emesd’exploitation,R´eseaux"

Copied!
1
0
0

Texte intégral

(1)

Institut Galil´ee Syst`emes d’exploitation, R´eseaux

Ann´ee 2011-2012 Licence 2

Contrˆ ole Syst` emes d’exploitation, R´ eseaux

Mercredi 20 Juin 2012 1h30

Aucun document n’est autoris´ e

Exercice 1 : Ordonnancement

(2)

On supposera que le temps de commutation de contexte est n´egligeable. Les processus suivants doivent ˆetre ex´ecut´es sur un ordinateur ayant un seul CPU :

Processus Date de d´ebut d’ex´ecution Dur´ee suppos´ee d’ex´ecution

P1 0 9

P2 4 8

Donner le diagramme de Gantt et le temps moyen de traitement lorsque l’algorithme d’ordonnancement de pro- cessus utilis´e par le syst`eme d’exploitation est la m´ethode par quantum (on prendra 4 comme dur´ee d’un quantum).

Exercice 2 : Parall´ elisation et threads

(8 = 1 + 1 + 1 + 1 + 2 + 2)

1. Donner un exemple simple de syst`eme de tˆache ne pouvant pas ˆetre d´ecrit avec les primitives parbegin/parend.

On consid`ere pour la suite de cet exercice le programme utilisant les primitives parbegin/parend donn´e ci-dessous:

begin parbegin

lire(a) lire(b) parend ; parbegin

c := a*a begin

d := a*b ; e := d*a ; end

parend ; e := c + d + e end

2. Donner le graphe de flot en pr´ecisant les tˆaches que vous consid´erez.

3. Indiquer les domaines de lecture et ´ecriture des diff´erentes tˆaches.

4. Le syst`eme est-il de parall´elisme maximal ?

5. Donner le programme correspondant de parall´elisme maximal en utilisant les primitives de Conway fork/join/quit.

6. Ecrivez le programme pr´ec´edent `a l’aide de threads.

Fonctions et en-tˆete utiles:

1#include<s t d i o . h>

2#include<s t d l i b . h>

3#include<p t h r e a d . h>

4

5 i n t p t h r e a d c r e a t e ( p t h r e a d t ∗t h r e a d , const p t h r e a d a t t r t ∗a t t r ,

6 void ∗(∗s t a r t r o u t i n e ) (void∗) , void ∗a r g )

7 i n t p t h r e a d j o i n ( p t h r e a d t t h r e a d , void ∗∗v a l u e p t r )

8 void p t h r e a d e x i t (void ∗v a l u e p t r )

9 i n t p t h r e a d m u t e x l o c k ( p t h r e a d m u t e x t ∗mutex )

10 i n t p t h r e a d m u t e x u n l o c k ( p t h r e a d m u t e x t ∗mutex )

11 i n t p t h r e a d m u t e x i n i t ( p t h r e a d m u t e x t ∗mutex , const p t h r e a d m u t e x a t t r t ∗a t t r )

12 i n t p t h r e a d m u t e x d e s t r o y ( p t h r e a d m u t e x t ∗mutex )

1

Références

Documents relatifs

• Le programme cr´ ee un thread qui doit ex´ ecuter la fonction void ∗accueil(void∗s) et 10 threads qui ex´ ecutent la fonction void ∗executer(void ∗s) , puis attend que tous

Le d´ eterminant de la matrice [u|v],not´ e det(u, v), est l’aire de ce parall´ elogramme, affect´ e du signe − si le trajet de u ` a v se fait dans le sens des aiguilles

Les concepteurs de Java ont choisi la m´ethode des moniteurs de Hoare (1974), assez fruste mais fonctionnant : lors de la d´efinition des processus, le programmeur d´ecide que

Enonc´ e n o D625 (Diophante) Quatre droites concourantes. Probl` eme propos´ e par

Si le calcul est long seulement pour certain index, une thread peut être encore entrain de faire des calculs alors que les autres ont finis. =&gt; problème de répartition de

(a) les plans ont un point commun et sont distincts, alors ils sont s´ ecants suivant une droite passant par ce point, (ainsi deux plans distincts qui ont deux points communs sont

A l’int´erieur de ce triangle rectangle, deux cercles de mˆeme rayon sont tangents entre eux ` ext´erieurement, et tangents chacun `a deux des cˆot´es du triangle.. Quelle sont

Soient A, B, et C trois points du plan. Les trois points A, B et C sont alignés, si et seulement si, deux des trois vecteurs ⃗ AB , ⃗ AC et ⃗ BC sont colinéaires.. 4.2) Milieu