Οργάνωση επεξεργαστών και διεργασιών

Σχετικά έγγραφα
Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 6: Κατανομή φόρτου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κινητά και Διάχυτα Συστήματα. Ενότητα # 10: Κατανομή φόρτου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Αποµακρυσµένη κλήση διαδικασιών

«ροµολόγηση ιεργασιών (2/2): Οργάνωση Επεξεργαστών και ιεργασιών (β)»

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1

«ροµολόγηση ιεργασιών (2/2): Οργάνωση Επεξεργαστών και ιεργασιών (α)» Εργασία

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

Σύστηµα CORBA. Κατανεµηµένα Συστήµατα 18-1

Νήµατα. ιεργασίες και νήµατα Υλοποίηση νηµάτων Ελαφριές διεργασίες Αξιοποίηση νηµάτων. Κατανεµηµένα Συστήµατα 10-1

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 1: Εισαγωγή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεµηµένασυστήµατα αρχείων

Κατανεµηµένα Αντικείµενα 16-1

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων

7.9 ροµολόγηση. Ερωτήσεις

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ

Ε-85: Ειδικά Θέµατα Λογισµικού

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο

Μετακινούμενος Κώδικας (Mobile Code) Κατανεμημένα Συστήματα 1

ροµολόγηση Επεξεργαστή

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

ΑΕΠΠ Ερωτήσεις θεωρίας

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1

Κεφάλαιο 3. Διδακτικοί Στόχοι

Το λειτουργικό σύστημα. Προγραμματισμός II 1

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

Εισαγωγή. Εποπτικός Έλεγχος Βιοµηχανικών ιεργασιών. Στόχος συστήµατος διαχείρισης ελέγχου

Σύστηµα Java RMI. Κατανεµηµένα Συστήµατα 17-1

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

Καθολικέςκαταστάσεις. Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική. Κατανεµηµένα Συστήµατα 04-1

Νήµαταστην Java. Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων. Κατανεµηµένα Συστήµατα 11-1

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 11 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου.

ΤρόποςΑξιολόγησης: α) Εργαστήρια (Προαιρετικάµε 20% - 35% βαρύτητα µόνοθετικά) β) Τελική Γραπτή Εξέταση

Επικοινωνία Client/Server Απομακρυσμένη Κλήση Διαδικασιών

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Πίνακας Περιεχοµένων Πρόλογος Κεφάλαιο Βασικές εισαγωγικές έννοιες

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες»

Το λειτουργικό σύστημα. Προγραμματισμός II 1

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Επ. Καθ. Κ. Λαμπρινουδάκης

3.1 Λειτουργικό Σύστηµα. Λειτουργικό Σύστηµα (2) ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα. Ο υπολογιστής σαν σκέτο hardware έχει περιορισµένη χρησιµότητα

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

Συνεχής ροή πολυµέσων

Εικονική Μνήµη. Κεφάλαιο 8. Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

Εγγυημένη ποιότητα υπηρεσίας

Κεφάλαιο 10 ο Υποπρογράµµατα

7.2 Τεχνολογία TCP/IP

Λειτουργικά Συστήµατα

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

Εκλογήαρχηγού. Εισαγωγή Ισχυρά συνδεδεµένος γράφος ακτύλιος µίας κατεύθυνσης Τοπολογία δένδρου. Κατανεµηµένα Συστήµατα 06-1

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΕΙΣΑΓΩΓΗ. Παρέχει µια διεπαφή (interface) ανάµεσα στο υλισµικό και στα προγράµµατα εφαρµογών/χρηστών.

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Διδάσκοντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη Λειτουργικά Συστήματα

Λειτουργικά Συστήματα (Λ/Σ)

Κινητά και Διάχυτα Συστήματα. Ενότητα # 6: Εφαρμογές DHT Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

1. Εγκατάσταση του NetMeeting

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση

7.3 Πρωτόκολλο TCP. 1. Το TCP πρωτόκολλο παρέχει υπηρεσίες προσανατολισµένες σε σύνδεση. Σ Λ

Λύση: Λύση: Λύση: Λύση:

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ικτύωσησε Java Κατανεµηµένα Συστήµατα 08-1

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Α. Ερωτήσεις Ανάπτυξης

Πληροφορίες. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Εισαγωγή. Στόχοι Κατανεµηµένων Συστηµάτων. ιαφάνεια

Λειτουργικά Συστήματα Η/Υ

Ο βασικός παράγοντας είναι ο χρόνος αξιοποίησης του επεξεργαστή Ελάχιστος αριθµός πράξεων και όχι µακρόχρονες αιτήσεις Ε/Ε

ιαδίκτυα & Ενδοδίκτυα Η/Υ

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

ΑΣΚΗΣΕΙΣ ΘΕΩΡΙΑΣ. ΘΕΜΑ 1 Δίνεται το παρακάτω τμήμα δηλώσεων ενός προγράμματος σε «ΓΛΩΣΣΑ»: ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: Π[10] ΛΟΓΙΚΕΣ: ΒΡΕΘΗΚΕ ΑΚΕΡΑΙΕΣ: i

Γλώσσες υψηλού επιπέδου Περιέχουν περισσότερες εντολές για την εκτέλεση πολύπλοκων εργασιών Τα προγράµµατα µεταφράζονται σε γλώσσα µηχανής είτε από το

Επιµέλεια Θοδωρής Πιερράτος

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

Κατανεμημένα Συστήματα. Ενότητα # 4: Μηχανισμοί Επικοινωνίας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ (ΝΕΟ ΣΥΣΤΗΜΑ) 27 ΜΑΪΟΥ 2016 ΕΚΦΩΝΗΣΕΙΣ ÊÁËÁÌÁÔÁ

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ ΠΕΡΣΕΦΟΝΗ ΠΟΛΥΧΡΟΝΙΔΟΥ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΤΕ

Συστήματα πολυμέσων. Εισαγωγή Υλικό συστημάτων πολυμέσων Λογισμικό συστημάτων πολυμέσων Συστήματα πραγματικού χρόνου Χρονοπρογραμματισμός

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

ιαδίκτυα & Ενδοδίκτυα Η/Υ

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Προγραμματισμός Ι (ΗΥ120)

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

Πρωτόκολλα Διαδικτύου

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη

Δίκτυα ATM. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 21-1

Τεχνολογία Πολυμέσων. Ενότητα # 17: Πρωτόκολλα μετάδοσης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΛΟΓΙΣΜΙΚΟ (software)

Ε Ι Α Γ Ω Γ Η Σ Ο Ν Π Ρ Ο Γ Ρ Α Μ Μ Α Σ Ι Μ Ο Κ Ε Υ Α Λ Α Ι Ο 6. Σο πρόγραμμα γράφεται σε κάποια γλώσσα προγραμματισμού.

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ)

Τεχνολογία Πολυμέσων. Ενότητα # 16: Πολυεκπομπή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Transcript:

Οργάνωσηεπεξεργαστών και διεργασιών Οργάνωση επεξεργαστών και διεργασιών Μοντέλα οργάνωσης επεξεργαστών Πολιτικές καταχώρισης Στάθµιση φόρτου (Κατα)µερισµός φόρτου Μετανάστευση κώδικα Είδη µετανάστευσης έσµευση πόρων Ετερογενή συστήµατα Σύστηµα Agent TCL Κατανεµηµένα Συστήµατα 12-1

Μοντέλαοργάνωσης επεξεργαστών Εξυπηρετητής Υπολογισµών Επεξεργαστής Επεξεργαστής Επεξεργαστής Εξυπηρετητής Αρχείων ίσκος ίσκος ίσκος Σταθµός Εργασίας ίκτυο ιασύνδεσης Σταθµός Εργασίας Σταθµός Εργασίας Σταθµός Εργασίας εξαµενή επεξεργαστών Χρήση εξυπηρετητών υπολογισµών και αρχείων Παρόµοιο µε σύστηµα πολυπρογραµµατισµού Σταθµοί εργασίας για διεπαφή χρήστη και µόνο Αξιοποίηση όσων επεξεργαστών χρειαζόµαστε Κατανεµηµένα Συστήµατα 12-2

Μοντέλαοργάνωσης επεξεργαστών Σταθµός Εργασίας Σταθµός Εργασίας Σταθµός Εργασίας ίκτυο ιασύνδεσης Σταθµός Εργασίας Σταθµός Εργασίας Σταθµός Εργασίας Σταθµοί εργασίας Ισότιµοι και ανεξάρτητοι, ιδιωτικοί ή κοινόχρηστοι Ένας ή κανένας χρήστης σε κάθε στιγµή Αξιοποίηση αδρανών σταθµών Αποµακρυσµένη εκτέλεση διεργασιών Χειροκίνητος ή αυτόµατος εντοπισµός Πιθανόν διαφορετικό περιβάλλον Πιθανόν να συνδεθεί άλλος χρήστης Κατανεµηµένα Συστήµατα 12-3

Μοντέλαοργάνωσης επεξεργαστών εξαµενή επεξεργαστών Υπέρ: αποφυγή σπατάλης αδρανών πόρων Κατά: αργή απόκριση λόγω χρήσης δικτύου Θεωρητικά απλή, αλλά στην πράξη ακριβή κλιµάκωση Σταθµοί εργασίας Υπέρ: Μικρός χρόνος απόκρισης και έλεγχος φόρτου Κατά: Οι σταθµοί µπορεί να παραµένουν αδρανείς ύσκολη παροχή αυξηµένης υπολογιστικής ισχύος Υβριδικό µοντέλο ιαλογικές διεργασίες σε τοπικό σταθµό εργασίας Παρασκηνιακές διεργασίες σε δεξαµενή επεξεργαστών Απλοί σταθµοί εργασίας + συστήµατα πολυεπεξεργαστών Χρήση κατανεµηµένου συστήµατος αρχείων Κατανεµηµένα Συστήµατα 12-4

Πολιτικέςκαταχώρισης Σε ποιον επεξεργαστή θα εκτελεστεί µία διεργασία; Κρίσιµη πολιτική στο µοντέλο σταθµών εργασίας Βελτιστοποίηση κάποιου µέτρου επίδοσης Μεγιστοποίηση βαθµού χρήσης επεξεργαστών Ελαχιστοποίηση χρόνου απόκρισης διεργασιών Ελαχιστοποίηση λόγου απόκρισης διεργασιών Στατικοί και δυναµικοί αλγόριθµοι Στατικοί: βασίζονται στη µέση συµπεριφορά του συστήµατος ε χρειάζεται να παρακολουθείται συνεχώς το σύστηµα υναµικοί: αντιδρούν στην τρέχουσα κατάσταση Συγκεντρωτικοί: ένας κόµβος λαµβάνει αποφάσεις Κατανεµηµένοι: κάθε κόµβος λαµβάνει αποφάσεις Συνεργατικοί: συνεργασία κόµβων στη λήψη αποφάσεων Μη συνεργατικοί: ανεξαρτησία κόµβων στη λήψη αποφάσεων Κατανεµηµένα Συστήµατα 12-5

Πολιτικέςκαταχώρισης Τοπικοί και καθολικοί αλγόριθµοι Τοπικοί: περιορισµένη πληροφορία και επιλογές Καθολικοί: µεγάλο κόστος ενηµέρωσης και µετανάστευσης Η πολυπλοκότητα των καθολικών αλγορίθµων δεν αποδίδει πάντα Επιθυµητά χαρακτηριστικά αλγορίθµων Καµία γνώση για τα χαρακτηριστικά των διεργασιών υναµική συµπεριφορά ανάλογα µε την κατάσταση Γρήγορη λήψη αποφάσεων Ισορροπία µεταξύ επίδοσης και επιβάρυνσης Σταθερότητα πολιτικής Κλιµακωσιµότητα Ανοχή σε βλάβες ίκαιη µεταχείριση των διεργασιών Κατανεµηµένα Συστήµατα 12-6

Πολιτικέςκαταχώρισης Τρεις γενικές προσεγγίσεις Προσέγγιση εκχώρησης καθηκόντων Κάθε διεργασία αποτελείται από κάποια καθήκοντα Βέλτιστη εκχώρηση καθηκόντων σε κόµβους Γενικά δεν έχουµε επαρκείς πληροφορίες εκ των προτέρων Προσέγγιση στάθµισης φόρτου Εξίσωση φόρτου κόµβων του συστήµατος Συνδυάζεται µε µετανάστευση διεργασιών Προσέγγιση (κατα)µερισµού φόρτου Αποφυγή εντελώς αδρανών κόµβων Ακραία µορφή στάθµισης φόρτου Οι κόµβοι είναι είτε αδρανείς είτε µη αδρανείς Παρόµοιοι αλλά απλούστεροι αλγόριθµοι Κατανεµηµένα Συστήµατα 12-7

Στάθµισηφόρτου Προσέγγιση στάθµισης φόρτου Προσπάθεια εξίσωσης φόρτου κόµβων Μετανάστευση διεργασιών σε λιγότερο φορτωµένους κόµβους Απαιτούνται οι ακόλουθες πολιτικές Πολιτική εκτίµησης φόρτου: πόσο φόρτο έχουµε; Πολιτική µεταφοράς διεργασιών: θα στείλουµε διεργασίες αλλού; Πολιτική επιλογής: ποια διεργασία θα µεταφερθεί; Πολιτική τοποθέτησης: που θα µεταφερθεί η διεργασία; Πολιτική ανταλλαγής πληροφοριών κατάστασης Πότε και ποιες πληροφορίες ανταλλάσσονται Πολιτική εκχώρησης προτεραιοτήτων Μεταξύ τοπικών και αποµακρυσµένων διεργασιών Πολιτική περιορισµού µετανάστευσης: για κάθε διεργασία Κατανεµηµένα Συστήµατα 12-8

Πολιτικές εκτίµησης φόρτου Στάθµισηφόρτου Χρησιµοποιούνται για να συγκρίνουµε το φόρτο των κόµβων Λόγω συχνής µέτρησης επιθυµούµε ένα απλό κριτήριο Μέτρηση πλήθους διεργασιών Αγνοεί τον πραγµατικό φόρτο των διεργασιών Άθροισµα υπόλοιπου χρόνου εξυπηρέτησης διεργασιών Γενικά δεν τον γνωρίζουµε Βαθµός χρήσης επεξεργαστή Απλό και αξιόπιστο µέτρο φόρτου Πολιτικές µεταφοράς διεργασιών Πρέπει ο κόµβος να αποστείλει διεργασίες αλλού; Πρέπει ο κόµβος να δεχτεί διεργασίες από αλλού; Απαιτείται ο καθορισµός κάποιων κατωφλιών Κατανεµηµένα Συστήµατα 12-9

Στάθµισηφόρτου Πολιτικές µεταφοράς διεργασιών Στατικό κατώφλι: κάθε κόµβος έχει ανεξάρτητο κατώφλι εν απαιτείται εκτίµηση της κατάστασης του συστήµατος υναµικό κατώφλι: εξαρτάται από το φόρτο των άλλων Σε ένα γενικά φορτωµένο σύστηµα το κατώφλι ανεβαίνει Απαιτείται ανταλλαγή πληροφοριών µεταξύ των κόµβων Πολιτική µοναδικού κατωφλιού Πάνω από το κατώφλι: υπερφορτωµένος κόµβος Κάτω από το κατώφλι: υποφορτωµένος κόµβος Στατικό ή δυναµικό κατώφλι Στέλνουµε ή δεχόµαστε διεργασίες ανάλογα µε την κατάσταση Κίνδυνος συνεχούς παλινδρόµησης κοντά στο κατώφλι Στέλνοντας µία διεργασία έχουµε υποφόρτωση εχόµενοι µία διεργασία έχουµε υπερφόρτωση Κατανεµηµένα Συστήµατα 12-10

Στάθµισηφόρτου Πολιτικές µεταφοράς διεργασιών Πολιτική δύο κατωφλιών (ψηλό και χαµηλό) Τρεις καταστάσεις για τον κάθε κόµβο Υπερφορτωµένος: πάνω από το ψηλό κατώφλι Στέλνει διεργασίες αλλού ε δέχεται διεργασίες από αλλού Κανονικός: ανάµεσα σε χαµηλό και ψηλό κατώφλι ε στέλνει διεργασίες αλλού ε δέχεται διεργασίες από αλλού Υποφορτωµένος: κάτω από το χαµηλό κατώφλι ε στέλνει διεργασίες αλλού έχεται διεργασίες από αλλού Ανάµεσα στις ακραίες καταστάσεις υπάρχει η κανονική Αποφεύγεται η παλινδρόµηση Κατανεµηµένα Συστήµατα 12-11

Στάθµισηφόρτου Πολιτικές επιλογής Επιλογή της διεργασίας που θα µεταναστεύσει Μη διακοπτόµενη: επιλέγει µόνο νέες διεργασίες ιακοπτόµενη: επιλέγει και διεργασίες που εκτελούνται Πολιτικές τοποθέτησης Επιλογή κόµβου-στόχου για µετανάστευση της διεργασίας Πολιτική κατωφλιού: τυχαία επιλογή κόµβου-στόχου Η διεργασία µεταναστεύει µόνο σε υποφορτωµένο κόµβο Η διερεύνηση συνεχίζεται µέχρι να βρεθεί ο στόχος Μετά από αρκετές άκαρπες διερευνήσεις τα παρατάµε Πολιτική µικρότερου: έλεγχος πολλών στόχων µαζί Επιλέγεται ο λιγότερο φορτωµένος από όλους Μεγάλο κόστος επικοινωνίας χωρίς αποτέλεσµα Κατανεµηµένα Συστήµατα 12-12

Πολιτικές τοποθέτησης Πολιτική πλειστηριασµού Στάθµισηφόρτου Ο φορτωµένος κόµβος πανεκπέµπει αίτηση για προσφορές Οι υποφορτωµένοι κόµβοι επιστρέφουν προσφορές Επιλέγεται η καλύτερη προσφορά Η επιλογή οριστικοποιείται στο τέλος Απαιτεί καθορισµό των περιεχοµένων των προσφορών Πολιτική ζευγαρώµατος Τυχαία επιλογή ενός κόµβου για ζευγάρωµα Κάθε κόµβος συµµετέχει µόνο σε ένα ζευγάρι Αν ο κόµβος δεν µπορεί να ζευγαρώσει, επιλέγουµε άλλον Οι δύο κόµβοι εξισορροπούν τους φόρτους τους Ο πιο φορτωµένος στέλνει φόρτο στον λιγότερο φορτωµένο Εύκολο να αποφασίσουµε αν συµφέρει η µετανάστευση Κατανεµηµένα Συστήµατα 12-13

Στάθµισηφόρτου Πολιτικές ανταλλαγής πληροφοριών Πότε και ποιες πληροφορίες ανταλλάσσονται; Περιοδική πανεκποµπή Κάθε κόµβος στέλνει την κατάστασή του παντού Περιττό όταν ο κόµβος δεν έχει αλλάξει κατάσταση Πανεκποµπή όταν αλλάζει η κατάσταση Όταν ο κόµβος βγαίνει από την κανονική περιοχή Μπορεί να µην ενδιαφέρεται κανένας Ανταλλαγή κατ απαίτηση Ο υπο/υπερφορτωµένος κόµβος ζητάει πληροφορίες Απαντούν µόνοι οι κατάλληλοι κόµβοι Ανταλλαγή µε δηµοσκόπηση Όποιος κόµβος ενδιαφέρεται επικοινωνεί µε τυχαίους κόµβους Σταµατάµε όταν βρεθεί στόχος ή µετά από ορισµένες προσπάθειες Κατανεµηµένα Συστήµατα 12-14

Στάθµισηφόρτου Πολιτικές εκχώρησης προτεραιοτήτων Ποιες διεργασίες έχουν προτεραιότητα; Εγωιστική: οι τοπικές έχουν προτεραιότητα Αλτρουιστική: οι αποµακρυσµένες έχουν προτεραιότητα Ενδιάµεση: προτεραιότητα ανάλογα µε το πλήθος Αν οι τοπικές είναι περισσότερες, έχουν προτεραιότητα Αν οι αποµακρυσµένες είναι περισσότερες, έχουν προτεραιότητα Η αλτρουιστική αποδίδει καλύτερα, η ενδιάµεση αρκετά καλά Πολιτικές περιορισµού µετανάστευσης Ανεξέλεγκτη: κάθε διεργασία µεταναστεύει όσο θέλει Μπορεί το κόστος µετανάστευσης να γίνει υπερβολικό Ελεγχόµενη: όριο µεταναστεύσεων ανά διεργασία Μπορεί να αυξάνεται για τις πιο χρονοβόρες διεργασίες Κατανεµηµένα Συστήµατα 12-15

(Κατα)µερισµός φόρτου Προσέγγιση (κατα)µερισµού φόρτου Η στάθµιση φόρτου απαιτεί συνεχή επικοινωνία Η εξισορρόπηση είναι αδύνατη σε δυναµικά συστήµατα Για αποδοτική χρήση των πόρων δεν απαιτείται στάθµιση Αποφεύγοντας τους αδρανείς κόµβους έχουµε καλή επίδοση Ίδιες ή παρόµοιες πολιτικές µε προσέγγιση στάθµισης Πολιτική εκτίµησης φόρτου Πολιτική µεταφοράς διεργασιών Πολιτική επιλογής (ίδια) Πολιτική τοποθέτησης Πολιτική ανταλλαγής πληροφοριών κατάστασης Πολιτική εκχώρησης προτεραιοτήτων (ίδια) Πολιτική περιορισµού µετανάστευσης (ίδια) Κατανεµηµένα Συστήµατα 12-16

(Κατα)µερισµός φόρτου Πολιτική εκτίµησης φόρτου Αρκεί να ξέρουµε αν ένας κόµβος είναι αδρανής ή όχι Ο φόρτος δεν είναι ποτέ µηδενικός Οι διεργασίες συστήµατος είναι πάντα ενεργές Αρκεί ένα στατικό όριο για το φόρτο Πολιτική µεταφοράς διεργασιών Μοναδικό κατώφλι ίσο µε 1 Οι αδρανείς κόµβοι δέχονται διεργασίες Οι κόµβοι µε µία διεργασία είναι σε ισορροπία Οι κόµβοι µε περισσότερες από δύο διεργασίες τις στέλνουν αλλού Μοναδικό κατώφλι ίσο µε 2 εχόµαστε δύο διεργασίες σε κατάσταση ισορροπίας Ο κόµβος δε µένει αδρανής όταν ολοκληρωθεί η µία Κατανεµηµένα Συστήµατα 12-17

(Κατα)µερισµός φόρτου Πολιτική τοποθέτησης Εκκινηµένη από τον παραλήπτη Πανεκποµπή ή διερεύνηση από υποφορτωµένο κόµβο Εκκινηµένη από τον αποστολέα Πανεκποµπή ή διερεύνηση από υπερφορτωµένο κόµβο Ποια συµφέρει από τις δύο; Εκκίνηση από τον παραλήπτη: σπατάλη µηνυµάτων Μπορεί κανείς να µην έχει φόρτο να δώσει Αυτό γίνεται µόνο όταν το σύστηµα δεν είναι φορτωµένο Συνδυάζεται καλύτερα µε διακοπτόµενη µετανάστευση Εκκίνηση από τον αποστολέα: οικονοµία µηνυµάτων Στέλνονται µηνύµατα όταν το σύστηµα είναι υπερφορτωµένο Συνδυάζεται µε µη διακοπτόµενη µετανάστευση Ο κόµβος στέλνει τη διεργασία που πρόκειται να ξεκινήσει Κατανεµηµένα Συστήµατα 12-18

(Κατα)µερισµός φόρτου Πολιτική ανταλλαγής πληροφοριών κατάστασης ε χρειάζεται περιοδική ανταλλαγή πληροφοριών ε χρειάζεται πλήρης ανταλλαγή πληροφοριών Μας ενδιαφέρουν µόνο οι ακραίες καταστάσεις Είναι ο κόµβος φορτωµένος ή αδρανής; Πανεκποµπή όταν αλλάζει η κατάσταση Σε περίπτωση αδράνειας: από τον παραλήπτη Σε περίπτωση υπερφόρτωσης: από τον αποστολέα Πολύ µεγάλο κόστος επικοινωνίας ηµοσκόπηση όταν αλλάζει η κατάσταση Τυχαία επιλογή και διερεύνηση κόµβων Σταµατάει όταν βρεθεί στόχος ή φτάσουµε κάποιο όριο Σε περίπτωση αδράνειας: εκκίνηση από τον παραλήπτη Σε περίπτωση υπερφόρτωσης: εκκίνηση από τον αποστολέα Κατανεµηµένα Συστήµατα 12-19

Μετανάστευσηκώδικα Μετακίνηση προγραµµάτων σε νέα µηχανή Μεταβίβαση κώδικα και δεδοµένων Πρέπει να δικαιολογεί το σηµαντικό κόστος της Μετακίνηση κώδικα σε µη φορτωµένες µηχανές ιάφοροι αλγόριθµοι εξισορρόπησης φόρτου Ελαχιστοποίηση επικοινωνίας διεργασιών Αποστολή κώδικα πελάτη σε εξυπηρετητή Ελαχιστοποίηση επικοινωνίας κατά την επεξεργασία Αποστολή κώδικα εξυπηρετητή σε πελάτη Ελαχιστοποίηση επικοινωνίας κατά το χειρισµό υναµική κατανοµή κώδικα σε µηχανές υναµική αποστολή κορµού σε πελάτη υνατότητα χρήσης εξειδικευµένων πρωτοκόλλων Κατανεµηµένα Συστήµατα 12-20

Είδηµετανάστευσης Συνιστώσες µιας διεργασίας Τµήµα κώδικα: εντολές προγράµµατος Τµήµα πόρων: αναφορές προς πόρους Τµήµα εκτέλεσης: τρέχουσα κατάσταση διεργασίας Ασθενής κινητικότητα Μόνο το τµήµα κώδικα και οι παράµετροι αρχικοποίησης Ο κώδικας ξεκινά την εκτέλεσή του από την αρχή Απαιτεί µόνο φορητότητα κώδικα Εκτέλεση στην ίδια ή σε χωριστή διεργασία Ισχυρή κινητικότητα Τµήµα κώδικα και τµήµα εκτέλεσης ιακοπή και συνέχιση εκτέλεσης σε νέα µηχανή Απαιτεί κατανόηση του τµήµατος εκτέλεσης (βλ. παρακάτω) Κατανεµηµένα Συστήµατα 12-21

Είδηµετανάστευσης Είδη Μετανάστευσης Ασθενής Κινητικότητα Ισχυρή Κινητικότητα Υπάρχουσα ιεργασία Καινούρια ιεργασία Μετανάστευση ιεργασίας Κλωνοποίηση ιεργασίας Αποµακρυσµένηκλωνοποίηση διεργασίας Παραλλαγή της ισχυρής κινητικότητας H εκτελούµενη διεργασία αντιγράφεται ως έχει Συνέχιση εκτέλεσης παράλληλα σε δύο µηχανές Παρόµοια µε κλωνοποίηση διεργασιών στο UNIX Μετατροπή υπάρχοντα κώδικα σε κατανεµηµένο Κατανεµηµένα Συστήµατα 12-22

έσµευσηπόρων Τύποι δέσµευσης πόρων µε διεργασία Με αναγνωριστικό: αναφορά σε συγκεκριµένο πόρο Αναφορές σε ιστοσελίδες ή διευθύνσεις IP Με τιµή: αναφορά σε πόρο µε συγκεκριµένες τιµές Αναφορές σε τυποποιηµένες βιβλιοθήκες Με τύπο: αναφορά σε οποιονδήποτε πόρο ενός τύπου Αναφορές σε εκτυπωτές και οθόνες Τύποι δέσµευσης πόρων µε µηχανές Ελεύθεροι: µπορούν να µετακινηθούν Αρχεία που σχετίζονται µόνο µε το πρόγραµµα Συνδεδεµένοι: πολύ µεγάλο κόστος µετακίνησης Τοπικές βάσεις δεδοµένων Σταθεροί: άρρηκτα δεµένοι µε µηχανή Τοπικό υλισµικό και πόροι λειτουργικού συστήµατος Κατανεµηµένα Συστήµατα 12-23

έσµευσηπόρων Ελεύθεροι Συνδεδεµένοι Σταθεροί Αντιµετώπιση πόρων κατά τη µετανάστευση Εξαρτάται από τους τύπους δέσµευσης 3 x 3 = 9δυνατοί συνδυασµοί δεσµεύσεων Μετακίνηση Αντιγραφή Με αναγνωριστικό Με τιµή Με τύπο (Αποµακρυσµένη)αναφορά Αντικατάσταση Μετακίνηση Αναφορά Μετακίνηση Αντιγραφή Αναφορά Αντικατάσταση Μετακίνηση Αντιγραφή Αναφορά Μετακίνηση Αναφορά Αντιγραφή Αντικατάσταση Αναφορά Αντιγραφή Αναφορά Αναφορά Αντικατάσταση Αναφορά Κατανεµηµένα Συστήµατα 12-24

Ετερογενήσυστήµατα Υλοποίηση µετανάστευσης κώδικα Ασθενής µετανάστευση: φορητότητα κώδικα Μεταγλώττιση κώδικα για πολλές πλατφόρµες Ισχυρή µετανάστευση: φορητότητα τµήµατος εκτέλεσης Απαιτεί εξειδικευµένη υποστήριξη σε ετερογενή συστήµατα Τι περιέχει το τµήµα εκτέλεσης; Ιδιωτικά δεδοµένα Στοίβα εκτέλεσης Τιµές καταχωρητών Μετρητή προγράµµατος ύο γενικές προσεγγίσεις Ελεγχόµενη µετανάστευση Εικονική µηχανή εκτέλεσης Κατανεµηµένα Συστήµατα 12-25

Ετερογενήσυστήµατα Προσέγγιση ελεγχόµενης µετανάστευσης Μετανάστευση µόνο στις κλήσεις διαδικασιών Συγκεκριµένα σηµεία εισόδου στον κώδικα Συγκεκριµένα σηµεία µεταφοράς ελέγχου ε χρειάζεται µεταφορά του µετρητή του προγράµµατος Αρκεί να γνωρίζουµε ποια διαδικασία καλείται ε χρειάζεται µεταφορά των καταχωρητών Όλο το περιβάλλον της διαδικασίας είναι στη στοίβα Στοίβα µετανάστευσης Σε κάθε κλήση η στοίβα έχει προκαθορισµένη µορφή Μεταβλητές, διεύθυνση επιστροφής, παράµετροι Αποθήκευση στοίβας µε τυποποιηµένο τρόπο Κάνει το τµήµα εκτέλεσης ανεξάρτητο από την πλατφόρµα Κατανεµηµένα Συστήµατα 12-26

Ετερογενήσυστήµατα Τοπικές µεταβλητές ιεύθυνση επιστροφής Παράµετροι κλήσης Προταγµένες µεταβλητές Αναγνωριστικό κλήσης Προταγµένες παράµετροι Αναγνωριστικό καλούµενου Στοίβα µετανάστευσης Ενηµέρωση σε κάθε κλήση ή επιστροφή διαδικασίας Προσθήκη και αφαίρεση παραµέτρων ιευθύνσεις επιστροφής διαδικασιών Τυποποιηµένα πλαίσια στοίβας Συντηρείται από το σύστηµα υποστήριξης της εκτέλεσης Χρήση κλήσεων βιβλιοθήκης για ενηµέρωση Μετατρέπεται κατάλληλα κατά τη µετανάστευση Συνέχιση της εκτέλεσης µετά από την κλήση Κατανεµηµένα Συστήµατα 12-27

Ετερογενήσυστήµατα Προσέγγιση εικονικής µηχανής Εκτέλεση ενδιάµεσου αντί αντικειµενικού κώδικα Υλοποιείται µε διερµηνευτή σε κάθε πλατφόρµα Όλοι οι διερµηνευτές είναι εσωτερικά συµβατοί Απλή µεταφορά του τµήµατος εκτέλεσης Μετατροπή ενός ετερογενούς συστήµατος σε οµοιογενές Παραλλαγές εικονικών µηχανών Φορητός µεταγλωττιστής Pascal Εικονική µηχανή Java ιερµηνευόµενες γλώσσες Η ίδια η γλώσσα είναι ο ενδιάµεσος κώδικας Χρήση τυποποιηµένης εσωτερικής κατάστασης Μετανάστευση κώδικα και κατάστασης Κατανεµηµένα Συστήµατα 12-28

Σύστηµα Agent TCL Πράκτορες ιερµηνευτές Σύστηµα υποστήριξης Εξυπηρετητής Μηχανισµοί επικοινωνίας Σύστηµα υποστήριξης πρακτόρων Αρχικά µόνο για TCL, αργότερα για διάφορες γλώσσες Αποτελείται από πέντε επίπεδα Μηχανισµοί επικοινωνίας µέσω TCP/IP και e-mail Εξυπηρετητής διαχείρισης πρακτόρων και επικοινωνίας Σύστηµα υποστήριξης εκτέλεσης για όλες τις γλώσσες ιερµηνευτές γλωσσών µε δυνατότητες µετανάστευσης Οι πράκτορες εκτελούνται σε χωριστές διεργασίες ιάφοροι τύποι κινητικότητας Κατανεµηµένα Συστήµατα 12-29

Σύστηµα Agent TCL Ασθενής κινητικότητα: αποστολή πρακτόρων Υποβολή πρακτόρων από τον πελάτη Μηχανή, πρόγραµµα και παράµετροι Απαιτεί µεταφορά στατικών δεδοµένων µόνο Ισχυρή κινητικότητα: µετανάστευση πρακτόρων Εκκίνηση από τον ίδιο τον πράκτορα Μεταβίβαση όλων των τµηµάτων προς τον στόχο Απαιτεί µεταφορά δυναµικής κατάστασης Αποµακρυσµένη κλωνοποίηση: κατανοµή πρακτόρων Παρόµοια µε ισχυρή κινητικότητα Σύστηµα υποστήριξης εκτέλεσης Παρακολούθηση και µεταφορά κατάστασης πράκτορα Η κατάσταση εξαρτάται από τη γλώσσα προγραµµατισµού Κατανεµηµένα Συστήµατα 12-30

Σύστηµα Agent TCL Παράδειγµα: µετανάστευση στην TCL Στατική κατάσταση: 4 πίνακες Καθολικά δεδοµένα του διερµηνευτή (εξαιρέσεις) Καθολικές µεταβλητές του συστήµατος (µηνύµατα) Καθολικές µεταβλητές του προγράµµατος Ορισµοί διαδικασιών που χρειάζεται ο πράκτορας υναµική κατάσταση: 2 στοίβες Στοίβα εντολών: ένα πλαίσιο ανά εκκρεµή εντολή Στις επαναληπτικές δοµές έχουµε πολλά πλαίσια Περιέχει τις παραµέτρους κάθε εντολής Στοίβα πλαισίων κλήσης: ένα πλαίσιο ανά εκκρεµή κλήση Περιέχει τα τοπικά δεδοµένα και τις παραµέτρους Η στοίβα εντολών τις κλήσεις διαδικασιών που είναι σε εξέλιξη Κατανεµηµένα Συστήµατα 12-31