Ιούνιος+2004+(clocks,+global+states)

Θέμα 2ο (15 Βαθμοί)

Δίνεται η εξής κατανεμημένη εκτέλεση ενός προγράμματος που αποτελείται από τρεις διεργασίες P1, P2 και P3, σε μορφή χρονοδιαγράμματος:


 * 1) Χρησιμοποιείστε λογικά ρολόγια Lamport και αναθέστε χρονοσφραγίδες σε όλα τα γεγονότα.
 * 2) Χρησιμοποιείστε λογικά διανυσματικά ρολόγια και αναθέστε χρονοσφραγίδες σε όλα τα γεγονότα.
 * 3) Δίνονται δύο τομές C1 και C2. Εξηγήστε κατά πόσο κάθε τομή είναι συνεπής ή ασυνεπής.
 * 4) Υποθέστε πως για κάθε γεγονός μιας διεργασίας ένας εξωτερικός παρατηρητής λαμβάνει αντίστοιχο μήνυμα ειδοποίησης με την τοπική κατάσταση και χρονοσφραγίδα της διεργασίας. Εξηγήστε αν και γιατί η συνέπεια/ασυνέπεια των καθολικών καταστάσεων που αντιστοιχούν στις τομές C1 και C2 μπορεί να εντοπιστεί από τον παρατηρητή, αποκλειστικά με βάση τα μηνύματα που αντιστοιχούν στα γεγονότα που συμπεριλαμβάνει η κάθε τομή. Δώστε ξεχωριστές απαντήσεις για την περίπτωση των ρολογιών Lamport και διανυσματικών ρολογιών.

__Λύση__: > > > Η C2 είναι συνεπής γιατί δεν υπάρχει γεγονός που συμπεριλαμβάνει, χωρίς να συμπεριλαμβάνει όλες του τις προγενέστερες λογικές εξαρτήσεις. > Αντίθετα, μέσω των διανυσματικών λογικών ρολογιών μπορούμε να διακρίνουμε την ασυνέπεια της C1 αν παρατηρήσουμε πως η διανυσματική χρονοσφραγίδα του γεγονότος e2.2 είναι μεγαλύτερη από αυτή του e3.2, δηλαδή TS(e2.2)>TS(e3.2) άρα e3.2~>e2.2. Το ίδιο ισχύει και για τον εντοπισμό συνέπειας της τομής C2 αν ελέγξει πως δεν υπάρχει γεγονός που συμπεριλαμβάνει του οποίου να παραλείπονται τα λογικά προγενέστερα γεγονότα του.
 * 1) Η C1 είναι ασυνεπής γιατί περιλαμβάνει τη λήψη ενός μηνύματος στο γεγονός e2.2 και δεν περιλαμβάνει την αποστολή του από το e3.2. Τα γεγονότα αυτά εξαρτώνται λογικά με τη σχέση e3.2~>e2.2. Η τομή συμπεριλαμβάνει το e2.2 χωρίς να συμπεριλαμβάνει το e3.2, άρα δεν συμπεριλαμβάνει όλα τα λογικά προγενέστερα γεγονότα.
 * 1) Η ασυνέπεια της C1 δεν μπορεί να εντοπιστεί μέσω ρολογιών Lamport, καθώς οι e2.2 και ε3.2 θα στείλουν τις χρονοσφραγίδες τους στον παρατηρητή αλλά αυτός δεν μπορεί να συμπεράνει πως αφού TS(e3.2.)e2. Ομοίως ούτε η συνέπεια της C2. Τα ρολόγια Lamport δεν μπορούν διακρίνουν λογική εξάρτηση μόνο μέσω χρονοσφραγίδων.

include component="comments" page="Ιούνιος 2004 (clocks, global states)" limit="10"