Académique Documents
Professionnel Documents
Culture Documents
Cours Horloge
Cours Horloge
me
Licence Informatique 3
anne
Introduction
Algorithmique distribue
Concurrence
Introduction
Algorithmique distribue
Dans ce cours
Systme distribu
Systme distribu
Processus R
Tampon Emission
Tampon Rception
canal
4
Processus
Processus
Canaux
Canal de communication
Uni ou bi-directionnel
Fiable ou non : perd/modifie ou pas des messages
Ordre de rception par rapport l'mission
Synchrone ou asynchrone
Exemple : FIFO = les messages sont reus dans l'ordre o ils sont mis
Synchrone : l'metteur et le rcepteur se synchronisent pour raliser
l'mission et/ou la rception
Asynchrone : pas de synchronisation entre metteur et rcepteur
Canaux
Fiable
FIFO
Bidirectionnel
Synchrone pour la rception
Asynchrone en mission
Problme
Mais
Temps
Deux modes
Synchronisation interne
Synchronisation externe
10
Synchronisation interne
Synchronisation externe
12
Mthodes de synchronisation
Ttrans est born : borne max mais aussi borne min : min < Ttrans < max
Mthodes de synchronisation
Mthodes de synchronisation
15
Mthodes de synchronisation
Temps logique
Temps logique
Chronogramme
18
19
Exemples d'vnements
Processus P1
20
Notation : e e'
Relation de paralllisme : ||
Horloge logique
23
Horloge de Lamport
Lamport, 1978
s : numro du processus
nb : numro d'vnement
Horloge de Lamport
Horloge de Lamport
26
Horloge de Lamport
Ordonnancement global
Du mme processus
De processus diffrents
27
Horloge de Lamport
Horloge de Mattern
Principe
Horloge de Mattern
Fonctionnement de l'horloge
Vi [ i ] = Vi [ i ] + 1
Incrmentation du compteur local d'vnement
Si mission d'un message, alors Vi est envoy avec le message
Pour un processus Pi, la rception d'un message m contenant un
vecteur Vm, on met jour les cases j i de son vecteur local Vi
j : Vi [ j ] = max ( Vm [ j ], Vi [ j ])
30
Horloge de Mattern
31
Horloge de Mattern
32
Horloge de Mattern
33
Horloge de Mattern
34
tat global
tat Global
Coupure
Coupure
Dfinition coupure
i :e C et e vnement du processus Pi e ei
Coupure
Exemple de coupure
Coupure = ensemble { e11, e12, e13, e21, e22, e23, e31, e32, e33, e34 }
37
Coupure/tat cohrent
Coupure cohrente
tat cohrent
Coupure cohrente
Coupure C1 : cohrente
Datation Coupure
Pour un processus Pi, si l'vnement ei est le plus rcent c'est lui qui a la
date la plus rcente pour C : sinon un vnement ej d'un processus Pj
(i j) s'est droul aprs un vnement ei' de Pi avec ei' plus rcent que ei
40
Datation Coupure
41
Principe gnral
Fonctionnement asynchrone
42
43
Envoie un marqueur sur tous ses canaux sortants : tous ses voisins
Enregistre l'tat du canal < i, j > : tous les messages reus sur
< i, j > depuis la rception du premier marqueur venant de Pk
44
Une fois que l'on sait que tous les processus l'ont
enregistrs
45
46
47
48
49
tats canaux : <3,1> = { m3, m4 }, <2,3> = { m5 }, autres sont vides