Vous êtes sur la page 1sur 3

Université de Batna 2

Département Informatique
CONCOURS D’ACCES AU DOCTORAT 3ÈME CYCLE EN INFORMATIQUE
Option : Systèmes Informatiques
Epreuve : Algorithmes Distribués
23 Octobre 2018 / Durée : 02h

DIRECTIVES PEDAGOGIQUES:
 Documentation non permise et il sera tenu compte de la clarté des copies.
 Calculatrice non autorisée
 Il est fortement interdit d’écrire avec des stylos en couleurs à l’exception du noir ou bleu

Exercice N°01 (05 points)

On considère le problème de la m-exclusion mutuelle qu’est une généralisation du problème


de l’exclusion mutuelle. Cette généralisation consiste à imposer que, sur les n processus du
système réparti, seuls m (n> m≥1) processus peuvent être en section critique simultanément.
(Dans l’exclusion mutuelle normale m= 1). Pour traiter ce problème, nous proposons de
modifier l’algorithme de Ricart et Agrawala. La modification proposée est la suivante :
chaque processus demandeur doit attendre toujours (n – 1) permissions pour pouvoir accéder
à la SC, mais k processus qui peuvent accéder à la SC.

Q. En se basant sur l’algorithme de Ricart et Agrawala, écrire un algorithme qui permet de


résoudre le problème de la m-exclusion mutuelle.

Exercice N°02 (06 points):

1. Décrivez brièvement ce que sont les propriétés de sureté et vivacité.


2. Quelles sont les propriétés d’un “Détecteur de Défaillances Inéluctablement Parfait
(<>P)”? Lesquelles sont des propriétés de sureté et vivacité ?
3. Il est très bien connais que les problèmes du consensus et de la diffusion atomique ne
peuvent pas être résolus d’une façon déterministe dans un système distribué asynchrone en
présence même d’un seul processus crashé. Comment les détecteurs de défaillances résolvent
ces problèmes.
4. Dans le modèle de défaillances par arrêt définitif (crash), les quelles des propriétés
suivantes qui sont des propriétés de sureté :

1. Chaque processus crashé est inéluctablement détecté.


2. Aucun processus n’est détecté avant qu’il se crashe
3. Deux processus ne décident pas différemment.
1/3
4. Deux processus correct ne décident pas différemment.
5. Chaque processus correct décide avant X unités de temps.
6. Si certain processus correct décide, alors chaque processus correct décide.

Exercice N°03 (04 points) :

Dans cet exercice, on s’intéresse aux problèmes dits d’accord dans les systèmes distribués.
1 - Quelle est la relation entre :
a) Le Consensus et la Diffusion Atomique
b) Le Consensus et l’Election d’un Leader
c) Le Consensus et la Validation Atomique
2 - Le résultat d’impossibilité de FLP est considéré parmi les résultats les plus important
dans le domaine des calculs distribués. En effet, ce résultat montre qu’un consensus n’est pas
réalisable de façon déterministe dans un système asynchrone soumis à des crashes de
processus, même si le système n’est soumis qu’à une seule défaillance et que les canaux sont
fiables. De manière intuitive, ce résultat d’impossibilité est justifié par le fait qu’il est
impossible de distinguer un processus lent d’un processus crashé.

a) Pourquoi, il est impossible de distinguer entre un processus lent et un processus


crashé ?
b) Comment contourner ce résultat d’impossibilité ?

3 - La difficulté du problème de k-consensus dépend de la valeur k. Pour k > f où f représente


le nombre maximum de processus défaillants, quel est le principe de l’algorithme de
résolution de ce problème ?

Exercice N°04 (05 points) :

On considère un système distribué constitué de trois sites nommés P1, P2 et P3, utilisant des
horloges matricielles pour dater les événements de chaque processus.

L’état initial du chaque processus est

On considère qu’aucun événement (local ou envoi/réception) n’a eu lieu dans l’état initial.

2/3
Après quelques instants d’exécution, les horloges des processus P1, P2 et P3 indiquent les
dates suivantes

Pour la suite on supposera que tous les messages envoyés ont été délivrés au plus tard aux
dates indiquées. C’est-à-dire qu’aucun message n’est en transit.

1. Au total, combien de messages ont été échangés ?


2. Au total, combien d’événements ont eu lieu ?
3. Au total, combien d’événements locaux ont eu lieu ? (c’est-à-dire sans compter les
événements correspondants à des émissions ou des réceptions de messages, ni l’état
initial)
4. Dans quel ordre ont été envoyés les messages de P2 ? (Justifiez votre réponse.)
5. Complétez le schéma suivant pour reconstruire l’historique des événements jusqu’aux
dates indiquées. Vous indiquerez la date matricielle de chaque événement.

3/3

Vous aimerez peut-être aussi