ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ"

Transcript

1 ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ρ Καραΐσκος Ζαφείριος ΤΕΙ Λάρισας Ιανουάριος 2010

2 ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή ιαδιεργασιακή επικοινωνία Σύγχρονη και ασύγχρονη επικοινωνία Επικοινωνία µε υποδοχές UDP datagram επικοινωνία TCP ρεύµα επικοινωνίας Τήλε-κλήση υποπρογράµµατος (RPC) Βασική λειτουργία της RPC Μεταβίβαση παραµέτρων Ασύγχρονο RPC ιευθυνσιοδότηση Επεξεργασία συναλλαγών Εισαγωγή Συναλλαγές Έλεγχος ταυτοχρονισµού Κλειδώµατα Αισιόδοξος έλεγχος ταυτοχρονισµού Ταξινόµηση µε βάση τις χρονοσφραγίδες Κατανεµηµένη κοινή µνήµη Το µοντέλο κοινής µνήµης Κατανεµηµένη κοινή µνήµη Θέµατα σχεδίασης και υλοποίησης Κατανεµηµένα συστήµατα αρχείων Κατανεµηµένη υπηρεσία ονοµάτων Κατανεµηµένη υπηρεσία αρχείων ιαφορές αρχείων

3 1. Εισαγωγή Ορισµός Λ.Σ. για Η/Υ ενός επεξεργαστή "Λειτουργικό σύστηµα είναι µια οµάδα προγραµµάτων τα οποία επικοινωνούν µε το χρήστη και εκτελούν τις εντολές του διαχειριζόµενα τις συσκευές του Η/Υ." Σχήµα 1. Λειτουργικό σύστηµα για Η/Υ ενός επεξεργαστή. Λ.Σ. για Η/Υ πολλών επεξεργαστών ιεπαφή χρήστη και εφαρµογές Λειτουργικό σύστηµα CPU... CPU Σχήµα 2. Λειτουργικό σύστηµα για Η/Υ πολλών επεξεργαστών. Χαρακτηριστικά: Ο Η/Υ έχει µια µνήµη κοινή για όλους τους επεξεργαστές. Υπάρχει συγχρονισµός µεταξύ των διεργασιών που εκτελούνται από τους επεξεργαστές. Η προσπέλαση κοινών πόρων γίνεται βάση του αµοιβαίου αποκλεισµού. Το σύστηµα παρέχει θεµελιώδεις (primitive) µηχανισµούς για την υλοποίηση των παραπάνω. 3

4 Λ.Σ. για πολλούς Η/Υ Η/Υ Α Η/Υ Β Η/Υ Γ Κατανεµηµένες Εφαρµογές Κατανεµηµένο Λειτουργικό Σύστηµα πυρήνας πυρήνας πυρήνας ίκτυο Σχήµα 3. Λειτουργικό σύστηµα για πολλούς Η/Υ. Ο πυρήνας (kernel) κάνει τη διαχείριση των διεργασιών ενός Η/Υ. Ο κάθε πυρήνας διαχειρίζεται τις τοπικές συσκευές και τη δια-διεργασιακή επικοινωνία. Το πρώτο επίπεδο πάνω από τους πυρήνες είναι το Κατανεµηµένο Λειτουργικό Σύστηµα (Κ.Λ.Σ.). υνατότητες του Κ.Λ.Σ. είναι: α) Η ανάθεση εργασιών στους επεξεργαστές. β) Η συγκάλυψη των αποτυχιών του υλικού (hardware). γ) Η παροχή διαφανούς (transparent) µνήµης. δ) Η δια-διεργασιακή επικοινωνία. ΠΑΡΑΤΗΡΗΣΗ: Η δια-διεργασιακή επικοινωνία θα συζητηθεί σε ξεχωριστό κεφάλαιο. Κατανεµηµένα συστήµατα κοινής µνήµης Ένα Κ.Λ.Σ. µπορεί να παρέχει κοινή κατανεµηµένη µνήµη (Κ.Κ.Μ.) ή όχι. Η παροχή Κ.Κ.Μ. διευκολύνει το συγχρονισµό και την επικοινωνία των διεργασιών, για παράδειγµα, οι σηµατοφόροι, οι ελεγκτές και η αποστολή µηνυµάτων διευκολύνουν περισσότερο από την παροχή µόνο της αποστολής µηνυµάτων. Ζητήµατα όπως ενδιάµεση αποθήκευση (buffering), φράξιµο (blocking) και αξιοπιστία δυσχεραίνουν την κατάσταση. Για το λόγο αυτό, 4

5 έχει γίνει σηµαντική έρευνα για τη µίµηση της κοινής µνήµης σε συστήµατα πολλών Η/Υ. Σκοπός είναι η παροχή εικονικής µνήµης. Θα µελετηθεί σε επόµενο κεφάλαιο. Λειτουργικά συστήµατα δικτύων (Λ.Σ...) Η/Υ Α Η/Υ Β Η/Υ Γ Κατανεµηµένες Εφαρµογές Λ.Σ.. Λ.Σ.. Λ.Σ.. πυρήνας πυρήνας πυρήνας ίκτυο Σχήµα 4. Λειτουργικό σύστηµα δικτύου. Σε αντίθεση µε τα Κ.Λ.Σ., τα Λ.Σ.. δε θεωρούν ότι το υποκείµενο υλικό είναι οµοιογενές, το οποίο θα έπρεπε να φαίνεται ως ένα σύστηµα. Υπάρχουν διάφορα υπολογιστικά συστήµατα ενός επεξεργαστή, το καθένα µε το δικό του Λ.Σ., όπως φαίνεται στο παραπάνω σχήµα. Είναι όλα συνδεδεµένα σε ένα δίκτυο. Τα Λ.Σ.. παρέχουν τη δυνατότητα στους χρήστες να κάνουν χρήση των υπηρεσιών που διαθέτει συγκεκριµένος Η/Υ. Μεγάλη διαφορά µεταξύ των δύο Λ.Σ. (Κ.Λ.Σ. και Λ.Σ..) είναι η διαφάνεια (transparency). Τα Κ.Λ.Σ. επιδιώκουν την πλήρη διαφάνεια, δηλαδή, την άποψη ενός συστήµατος. Τα Λ.Σ.. απαιτούν την είσοδο σε συγκεκριµένο Η/Υ του δικτύου. Αυτό φυσικά καταστρατηγεί τη διαφάνεια. Μεσολογισµικό Σύµφωνα µε τον ορισµό των κατανεµηµένων συστηµάτων: "Ένα κατανεµηµένο σύστηµα είναι µια συλλογή από ανεξάρτητους Η/Υ, οι οποίοι εµφανίζονται στους χρήστες ως ένα ενιαίο συναφές σύστηµα." ούτε τα Κ.Λ.Σ. είναι κατανεµηµένα αφού δε χειρίζονται ανεξάρτητους Η/Υ, ούτε τα Λ.Σ.. παρέχουν την όψη ενός ενιαίου συναφούς συστήµατος. 5

6 Σχήµα 5. Μεσολογισµικό. Για να συνδυάσουν την προσαρµοστικότητα και την ανοικτότητα των Λ.Σ.. µε τη διαφάνεια και την ευκολία χρήσης των Κ.Λ.Σ. πολλά µοντέρνα κατανεµηµένα συστήµατα κατασκευάζονται µε ένα επιπρόσθετο στρώµα, που ονοµάζεται µεσολογισµικό (middleware). 6

7 2. ιαδιεργασιακή επικοινωνία Η δια-διεργασιακή επικοινωνία (interprocess communication) αφορά την µεταβίβαση µηνυµάτων µεταξύ των διεργασιών. Μεταβίβαση ενός µηνύµατος από µια διεργασία σε άλλη, είναι η αντιγραφή δεδοµένων από το χώρο µνήµης της µιας διεργασίας στο χώρο µνήµης της άλλης διεργασίας. Γι αυτό το σκοπό χρησιµοποιούνται δύο θεµελιώδεις εντολές: send(παραλήπτης, µήνυµα) και receive(αποστολέας, µήνυµα) Για να επιτευχθεί η επικοινωνία µεταξύ δύο διεργασιών, η µία διεργασία στέλνει ένα µήνυµα µε την εντολή send, το οποίο λαµβάνει η άλλη µε την εντολή receive. Για να πραγµατοποιηθεί η επικοινωνία ίσως χρειαστεί ο συγχρονισµός των διεργασιών. Σχήµα 6. Επικοινωνία δύο διεργασιών. 2.1 Σύγχρονη και ασύγχρονη επικοινωνία Οι δύο θεµελιώδεις εντολές µπορεί να εκτελούνται µε φράξιµο (blocking) ή χωρίς-φράξιµο (nonblocking). Φράξιµο σηµαίνει ότι η καλούσα διεργασία παύει να εκτελείται µέχρι να ολοκληρώσει η εντολή την εργασία της. Άρα χωρίς-φράξιµο, η καλούσα διεργασία συνεχίζει να εκτελείται χωρίς να περιµένει την ολοκλήρωση της εντολής. Υπάρχουν δύο είδη επικοινωνίας, η σύγχρονη και η ασύγχρονη. 1. Σύγχρονη send και σύγχρονη receive. Η εντολή send επιστρέφει τον έλεγχο στην καλούσα διεργασία µόνον όταν η αντίστοιχη receive, στην 7

8 πλευρά του παραλήπτη, τερµατίσει επιτυχώς και στείλει επιβεβαίωση λήψης του µηνύµατος στον αποστολέα. Αποστολέας Παραλήπτης send { blocked state Αποστολή µηνύµατος } receive blocked state Αποστολή επιβεβαίωσης Σχήµα 7. Σύγχρονη επικοινωνία. Μέχρι τη λήψη της επιβεβαίωσης, ο αποστολέας δεν µπορεί να συνεχίσει την εκτέλεση του κώδικά του. Η λήψη της επιβεβαίωσης υπονοεί ότι ο παραλήπτης έλαβε όλο το µήνυµα. Συνεπώς, η ολοκλήρωση της send εγγυάται ότι το µήνυµα ελήφθη µε επιτυχία. 2. Ασύγχρονη send και σύγχρονη receive. Η ασύγχρονη send, επιστρέφει τον έλεγχο στην καλούσα διεργασία, όταν το µήνυµα αποσπαστεί από το χώρο µνήµης της διεργασίας. 8

9 Αποστολέας Παραλήπτης send Αποστολή µηνύµατος } receive blocked state Αποστολή επιβεβαίωσης Σχήµα 8. Ασύγχρονη send και σύγχρονη receive. Σε σύγκριση µε την σύγχρονη send, η ασύγχρονη επιτρέπει τη διεργασία αποστολής να ανακτήσει πολύ νωρίτερα, αλλά δεν εγγυάται ότι το µήνυµα έφτασε ή θα φτάσει στην κατάλληλη διεργασία. Η εξασφάλιση αυτής της εγγύησης θα απαιτούσε επιπρόσθετη συνεννόηση (handshaking) µεταξύ των διεργασιών. 3. Ασύγχρονη send και ασύγχρονη receive µε φράξιµο. Η ασύγχρονη µε φράξιµο receive είναι παρόµοια µε την σύγχρονη receive επειδή επιστρέφει τον έλεγχο στην καλούσα διεργασία µόνον όταν το µήνυµα έχει µεταφερθεί µε επιτυχία στον προορισµό του. Αποστολέας Παραλήπτης send Αποστολή µηνύµατος } receive blocked state Σχήµα 9. Ασύγχρονη send ασύγχρονη receive µε φράξιµο. 9

10 Αντίθετα µε τη σύγχρονη receive, η receive µε φράξιµο δε στέλνει επιβεβαίωση λήψης στον αποστολέα. 4. Ασύγχρονη send και ασύγχρονη receive. Οι χωρίς φράξιµο send και receive επιτρέπουν τη µεγαλύτερη αλληλοεπικάλυψη (overlap) µεταξύ υπολογισµού και µεταβίβασης µηνύµατος επιστρέφοντας το συντοµότερο στην καλούσα διεργασία. Μια χωρίς φράξιµο send επιστρέφει τον έλεγχο αµέσως. Μια χωρίς φράξιµο receive επιστρέφει τον έλεγχο αφού πρώτα στείλει την πρόθεση λήψης. Η λήψη µηνύµατος και η τοποθέτησή του στο χώρο µνήµης της διεργασίας εκτελείται ασύγχρονα, σε απροσδιόριστη στιγµή, από το σύστηµα. Αποστολέας Παραλήπτης send Αποστολή µηνύµατος receive Σχήµα 10. Ασύγχρονη send και ασύγχρονη receive Στις χωρίς φράξιµο send και receive η επιστροφή του ελέγχου δεν υπονοεί τίποτα για την κατάσταση του µηνύµατος, οπότε είναι ευθύνη του χρήστη να προσδιορίσει αυτήν την κατάσταση. Ξεχωριστές θεµελιώδεις-εντολές (primitives) παρέχονται για τη διερεύνηση της κατάστασης. Μηνύµατα χωρίς φράξιµο, συνεπώς, χρησιµοποιούνται σε δύο φάσεις: πρώτα η send/receive εκτελεί το δικό της κώδικα και µετά, όταν χρειάζεται, τις θεµελιώδεις-εντολές διερεύνησης. Οι θεµελιώδεις-εντολές µπορούν να φράξουν µέχρι να παρατηρηθεί η επιθυµητή κατάσταση ή να επιστρέψουν τον έλεγχο αµέσως και απλώς να αναφέρουν την παρατηρηθείσα κατάσταση. 10

11 2.2 Επικοινωνία µε υποδοχές Η υποδοχή (socket) είναι ένας µηχανισµός που παρέχει επικοινωνία δύο κατευθύνσεων. Υπάρχουν πολλών ειδών υποδοχές, δύο εκ των οποίων είναι οι υποδοχές διαδικτύου και οι υποδοχές UNIX. Θα εξετάσουµε τις υποδοχές διαδικτύου και ιδιαίτερα τις υποδοχές-ροής (stream-sockets) και τις datagram υποδοχές. Οι υποδοχές-ροής είναι αξιόπιστη επικοινωνία δύο-κατευθύνσεων. Η µεταβίβαση των µηνυµάτων είναι fifo. Υποδοχές-ροής χρησιµοποιεί το HTTP πρωτόκολλο των φυλλοµετρητών διαδικτύου. Οι υποδοχές-ροής χρησιµοποιούν το πρωτόκολλο TCP. Οι datagram-υποδοχές δε χρησιµοποιούν TCP, χρησιµοποιούν όµως IP για τη δροµολόγηση στο διαδίκτυο, και το User Datagram Protocol (UDP). Οι datagram-υποδοχές υλοποιούν τη λεγόµενη ασύνδετη επικοινωνία, διότι δε χρειάζεται να διατηρούν µια ανοιχτή σύνδεση, όπως οι υποδοχές-ροής. Το µόνο που χρειάζεται είναι το µήνυµα και η ΙΡ κεφαλίδα για να γίνει η αποστολή. Η δια-διεργασιακή επικοινωνία συνίσταται στην µεταβίβαση ενός µηνύµατος από την υποδοχή µιας διεργασίας στην υποδοχή άλλης διεργασίας, όπως φαίνεται στο σχήµα που ακολουθεί. Σχήµα 11. Μεταβίβαση µηνύµατος από υποδοχή σε υποδοχή. Μια διεργασία, για να λάβει µηνύµατα, πρέπει να είναι δεµένη σε µια τοπική πόρτα και µία από τις διευθύνσεις διαδικτύου του Η/Υ στον οποίο εκτελείται. Τα µηνύµατα που στέλνονται σε συγκεκριµένη διεύθυνση διαδικτύου και συγκεκριµένο αριθµό πόρτας, µπορούν να ληφθούν µόνο από µια διεργασία της οποίας η υποδοχή είναι συνδεδεµένη µε τη συγκεκριµένη διεύθυνση διαδικτύου και το συγκεκριµένο αριθµό πόρτας. ιεργασίες µπορούν να χρησιµοποιήσουν την ίδια υποδοχή για την αποστολή και λήψη µηνυµάτων. Κάθε Η/Υ έχει ένα µεγάλο αριθµό ( 2 16 ) δυνατών αριθµών πορτών, που µπορούν να χρησιµοποιήσουν οι τοπικές διεργασίες για τη λήψη µηνυµάτων. 11

12 Κάθε διεργασία µπορεί να λάβει µηνύµατα από πολλές πόρτες, αλλά µια διεργασία δεν µπορεί να µοιράζεται πόρτες µε άλλες διεργασίες στον ίδιο Η/Υ. Οι διεργασίες που χρησιµοποιούν πολλαπλής διανοµής ΙΡ 1, αποτελούν εξαίρεση διότι αυτές µοιράζονται πόρτες. Ωστόσο, πολλές διεργασίες µπορούν να στείλουν µηνύµατα στην ίδια πόρτα. Κάθε υποδοχή συνδέεται µε συγκεκριµένο πρωτόκολλο, είτε το UDP είτε το TCP UDP datagram επικοινωνία Ένα datagram 2 που στέλνεται µε UDP, µεταβιβάζεται από µια διεργασία αποστολέα σε µια διεργασία παραλήπτη, χωρίς επιβεβαίωση ή επαναληπτικές προσπάθειες. Αν συµβεί µια αποτυχία, το µήνυµα µπορεί να µην φτάσει. Ένα datagram είναι διαβιβασθέν, όταν µια διεργασία το έχει στείλει και µια άλλη διεργασία το έχει παραλάβει. Μια διεργασία για να στείλει ή να λάβει µηνύµατα πρέπει πρώτα να δέσει µια υποδοχή µε µια διεύθυνση διαδικτύου του τοπικού οικοδεσπότη και µια τοπική πόρτα. Ένας εξυπηρετητής θα δέσει την υποδοχή του µε µια πόρτα εξυπηρετητή, την οποία θα γνωστοποιήσει σε πελάτες ώστε να µπορούν να στείλουν µηνύµατα σ' αυτή. Ένας πελάτης δένει την υποδοχή του σε οποιαδήποτε ελεύθερη τοπική πόρτα. Η λήψη επιστρέφει τη διεύθυνση διαδικτύου και την πόρτα του αποστολέα, µαζί µε το µήνυµα, δίνοντας έτσι τη δυνατότητα στον παραλήπτη να απαντήσει. Οι παράγραφοι που ακολουθούν παρουσιάζουν κάποια ζητήµατα σχετιζόµενα µε την datagram επικοινωνία: Μέγεθος µηνύµατος. Η διεργασία λήψης χρειάζεται να καθορίσει έναν πίνακα bytes (buffer) συγκεκριµένου µεγέθους στον οποίο θα υποδεχθεί το µήνυµα. Αν το µήνυµα είναι πολύ µεγάλο για τον πίνακα, περικόπτεται κατά την 16 άφιξη. Το υποκείµενο ΙΡ πρωτόκολλο επιτρέπει πακέτα µήκους µέχρι 2 byte, συµπεριλαµβανοµένης της κεφαλίδας. Εν τούτοις, τα περισσότερα περιβάλλοντα επιβάλλουν µέγιστο µέγεθος byte. Εφαρµογές που απαιτούν µεγαλύτερα µηνύµατα πρέπει να τα τεµαχίσουν σε κοµµάτια αυτού του µεγέθους. Γενικά, µια εφαρµογή, για παράδειγµα το DNS, καθορίζει ένα µέγεθος που δεν είναι υπερβολικά µεγάλο αλλά είναι επαρκές για την προτιθέµενη χρήση. Φράξιµο. Οι υποδοχές συνήθως παρέχουν send χωρίς φράξιµο και receive µε φράξιµο για datagram επικοινωνία (η receive χωρίς φράξιµο είναι επιλογή σε 1 Αποστολή ενός ΙΡ πακέτου σε οµάδα Η/Υ. 2 Ένα datagram είναι ένα µικρό "πακέτο", τµήµα ενός µεγαλύτερου µηνύµατος, που περιέχει την πλήρη διεύθυνση του οικοδεσπότη αποστολέα και του οικοδεσπότη παραλήπτη. 12

13 κάποιες υλοποιήσεις). Η πράξη send επιστρέφει αφού έχει παραδώσει το µήνυµα στα υποκείµενα UDP και IP πρωτόκολλα, τα οποία είναι υπεύθυνα για τη µεταβίβασή του στον προορισµό του. Με την άφιξη, το µήνυµα τοποθετείται σε µια ουρά της υποδοχής που είναι (η υποδοχή) δεµένη µε την πόρτα προορισµού. Το µήνυµα µπορεί να περισυλλεγεί από την ουρά από µια εκκρεµή κλήση ή µια µελλοντική κλήση της receive επί αυτής της υποδοχής. Μηνύµατα απορρίπτονται (στον προορισµό) όταν καµία διεργασία δεν έχει ήδη δέσει µια υποδοχή µε την πόρτα προορισµού. Η receive φράζεται µέχρι να ληφθεί ένα datagram, εκτός και αν έχει τεθεί λήξη χρόνου στην υποδοχή. Αν η διεργασία που καλεί τη receive έχει να κάνει άλλη δουλειά περιµένοντας το µήνυµα, πρέπει να κανονίσει για ξεχωριστό νήµα (thread). Λήξη χρόνου. Η receive µε ατελείωτο φράξιµο, είναι κατάλληλη για χρήση από έναν εξυπηρετητή που περιµένει να λάβει αιτήµατα από τους πελάτες του. Σε µερικά, όµως, προγράµµατα δεν είναι πρέπων να περιµένει επ' αόριστον σε περίπτωση που ο ενδεχόµενος αποστολέας έχει συντριβεί ή το µήνυµα έχει χαθεί. Τέτοιες περιπτώσεις αντιµετωπίζονται θέτοντας λήξη χρόνου στις υποδοχές. Η επιλογή του κατάλληλου χρονικού διαστήµατος χρόνου είναι δύσκολη, αλλά θα πρέπει να είναι αρκούντως µεγάλο σε σύγκριση µε το χρόνο που χρειάζεται ένα µήνυµα να µεταβιβαστεί. Λήψη από οποιονδήποτε. Η receive δεν καθορίζει την προέλευση των µηνυµάτων. Αντ' αυτού, η κλήση της receive λαµβάνει ένα µήνυµα που κατευθύνεται στην υποδοχή της από οποιαδήποτε προέλευση. Η receive επιστρέφει τη διεύθυνση διαδικτύου και την τοπική πόρτα του αποστολέα, επιτρέποντας τον παραλήπτη να ελέγξει την προέλευσή του. Είναι δυνατόν να συνδέσουµε µια datagram υποδοχή µε συγκεκριµένη αποµακρυσµένη πόρτα και διεύθυνση διαδικτύου, οπότε η υποδοχή είναι σε θέση να στέλνει σε και να λαµβάνει µηνύµατα µόνο από αυτή τη διεύθυνση. Σε κάποιες εφαρµογές είναι αποδεκτή η χρήση υπηρεσιών οι οποίες είναι αντικείµενο σποραδικών αποτυχιών. Για παράδειγµα, η Υπηρεσία Ονοµάτων Περιοχής, η οποία ανατρέχει DNS ονόµατα στο διαδίκτυο, υλοποιείται πάνω σε UDP. Voice over IP τρέχει επίσης, πάνω σε UDP. UDP datagrams είναι πολλές φορές µια ελκυστική επιλογή, διότι δεν «πάσχουν» από επιβαρύνσεις (overheads), πού σχετίζονται µε την εγγυηµένη διανοµή µηνυµάτων. Υπάρχουν τρεις κύριες πηγές επιβάρυνσης: α. η ανάγκη αποθήκευσης της κατάστασης σε αφετηρία και προορισµό. 13

14 β. Η µεταβίβαση πρόσθετων µηνυµάτων. γ. Η λανθάνουσα κατάσταση (latency) του αποστολέα. Παράδειγµα επικοινωνίας µε datagram sockets SERVER s=socket(ip4 ή IP6,STREAM,πρωτόκολλο) CLIENT s=socket( ) bind( ) send() ή sendto( ) recv( ) close(s) close (s) TCP ρεύµα επικοινωνίας Αυτού του είδους η επικοινωνία παρέχει την αφαίρεση (abstraction) ενός ρεύµατος byte, στο οποίο δεδοµένα µπορούν να εισαχθούν σ αυτό όπως επίσης να εξαχθούν (διαβαστούν) από αυτό. Τα ακόλουθα χαρακτηριστικά του δικτύου αποκρύπτονται από το ρεύµα: Μέγεθος µηνύµατος: Η εφαρµογή επιλέγει το πλήθος των δεδοµένων που θα γράψει στο ρεύµα ή θα διαβάσει από αυτό. Μπορεί να επιλέξει µεταξύ πολύ µικρής ή πολύ µεγάλης οµάδας δεδοµένων. Η υποκείµενη υλοποίηση του TCP ρεύµατος, αποφασίζει πόσα δεδοµένα θα συγκεντρώσει πριν τα µεταβιβάσει ως ένα ή περισσότερα IP πακέτα. Με την άφιξη τα δεδοµένα παραχωρούνται στην εφαρµογή που τα ζήτησε. Οι εφαρµογές δύνανται, εν ανάγκη, να πιέσουν ώστε τα δεδοµένα να σταλούν αµέσως. Χαµένα µηνύµατα: Το TCP πρωτόκολλο κάνει χρήση του σχήµατος επιβεβαίωσης. Για παράδειγµα, ο παραλήπτης στέλνει επιβεβαίωση για κάθε παραλαβή. Αν ο αποστολέας δε λάβει επιβεβαίωση µε τη λήξη χρόνου, ξαναστέλνει το µήνυµα. Έλεγχος ροής: Το TCP πρωτόκολλο προσπαθεί να ταιριάξει την ταχύτητα των διεργασιών που γράφουν στο ρεύµα και διαβάζουν από το ρεύµα. Αν ο αποστολέας είναι γρηγορότερος του παραλήπτη, τότε φράζεται µέχρι ο παραλήπτης να διαβάσει αρκετά από τα µηνύµατα. ιπλότυπα µηνυµάτων και ταξινόµηση: Τα αναγνωριστικά των µηνυµάτων συνδέονται µε κάθε ΙΡ πακέτο, γεγονός που επιτρέπει στον παραλήπτη να 14

15 ανιχνεύσει και να απορρίψει τα διπλότυπα ή να ταξινοµήσει εκ νέου τα µηνύµατα, τα οποία δε φτάνουν µε τη σειρά που στάλθηκαν. Προορισµός µηνύµατος: Ένα ζευγάρι επικοινωνούντων διεργασιών, εγκαθιστούν µια σύνδεση πριν µπορέσουν να επικοινωνήσουν µε ρεύµα. Μόλις επιτευχθεί η σύνδεση, οι διεργασίες απλώς γράφουν ή διαβάζουν στο ρεύµα, χωρίς να χρειάζεται να χρησιµοποιήσουν διευθύνσεις διαδικτύου και πόρτες. Η εγκατάσταση µιας σύνδεσης περιλαµβάνει ένα connect αίτηµα του πελάτη προς τον εξυπηρετητή, ακολουθούµενο από µια accept απόκριση του εξυπηρετητή προς τον πελάτη, πριν η επικοινωνία λάβει χώρα. Αυτό µπορεί να είναι σηµαντική επιβάρυνση για ένα απλό πελάτη-εξυπηρετητή αίτηµα και απόκριση. Η επικοινωνία ρεύµατος υποθέτει ότι όταν ένα ζευγάρι διεργασιών εγκαθιστά µια σύνδεση, µία από αυτές παίζει το ρόλο του πελάτη και η άλλη παίζει το ρόλο του εξυπηρετητή. Ο ρόλος του πελάτη περιλαµβάνει τη δηµιουργία µιας υποδοχής ρεύµατος δεµένης σε κάποια πόρτα και κατόπιν την υποβολή αιτήµατος connect ζητώντας σύνδεση µε τον εξυπηρετητή στην πόρτα του εξυπηρετητή. Ο ρόλος του εξυπηρετητή περιλαµβάνει τη δηµιουργία µιας αφουγκραζόµενης υποδοχής δεµένης σε µια πόρτα του εξυπηρετητή και την αναµονή του αιτήµατος πελάτη για σύνδεση. Η αφουγκραζόµενη υποδοχή διατηρεί ουρά εισερχοµένων αιτηµάτων σύνδεσης. Στο µοντέλο υποδοχής, όταν ο εξυπηρετητής αποδέχεται µια σύνδεση (µε τη συνάρτηση accept), δηµιουργείται µια νέα υποδοχή ρεύµατος µε σκοπό την επικοινωνία του εξυπηρετητή µε έναν πελάτη, διατηρώντας, εν τω µεταξύ, την αρχική υποδοχή του δεµένη µε την πόρτα για το άκουσµα νέων αιτηµάτων connect από άλλους πελάτες. Το ζεύγος υποδοχών του πελάτη και του εξυπηρετητή συνδέονται µε ένα ζεύγος ρευµάτων, ένα για κάθε κατεύθυνση. Μία από το ζεύγος διεργασιών στέλνει πληροφορίες στην άλλη γράφοντας στο εξερχόµενο ρεύµα και η άλλη διεργασία λαµβάνει την πληροφορία διαβάζοντας το εισερχόµενο ρεύµα. Όταν µια εφαρµογή κλείνει µια υποδοχή (µε τη συνάρτηση close), δηλώνει ότι δε θα γράψει άλλα δεδοµένα στο εξερχόµενο ρεύµα. εδοµένα που βρίσκονται στο buffer εξερχοµένων αποστέλλεται στο άλλο άκρο του ρεύµατος και τοποθετείται στην ουρά της υποδοχής προορισµού µε την ένδειξη ότι το ρεύµα διακόπηκε. Η διεργασία στον προορισµό µπορεί να διαβάσει τα δεδοµένα από την ουρά, αλλά κάθε προσπάθεια να συνεχίσει το διάβασµα, αφού η ουρά έχει αδειάσει, θα έχει ως αποτέλεσµα την ένδειξη του τέλους του ρεύµατος. Όταν µια διεργασία εξέρχεται ή αποτυγχάνει, όλες οι 15

16 υποδοχές κλείνουν και οποιαδήποτε προσπάθεια επικοινωνίας µε αυτή θα βρει τη σύνδεση κοµµένη. Ακολουθούν κάποια σηµαντικά ζητήµατα σχετικά µε την επικοινωνία ρεύµατος: Ταίριασµα δεδοµένων: ύο επικοινωνούσες διεργασίας πρέπει να συµφωνήσουν ως προς το περιεχόµενο των δεδοµένων των µεταβιβαζόµενων µε το ρεύµα, ώστε να µην υπάρξει παρερµηνεία από τον παραλήπτη. Για παράδειγµα, αν µια διεργασία γράψει στο ρεύµα ένα ακέραιο ακολουθούµενο από έναν πραγµατικό αριθµό, πρέπει και ο παραλήπτης να διαβάσει ένα ακέραιο αριθµό ακολουθούµενο από έναν πραγµατικό. Φράξιµο: Τα δεδοµένα που γράφονται στο ρεύµα, φυλάσσονται σε µια ουρά της υποδοχής προορισµού. Όταν µια διεργασία επιχειρεί να διαβάσει δεδοµένα από ένα εισερχόµενο ρεύµα, θα τα λάβει από την ουρά ή θα φράξει µέχρι να υπάρξουν διαθέσιµα. Η διεργασία που γράφει δεδοµένα σε ρεύµα µπορεί να φράξει, από το µηχανισµό ελέγχου TCP ροής, αν η υποδοχή στο άλλο άκρο φυλάσσει στην ουρά τόσα δεδοµένα όσα επιτρέπει το πρωτόκολλο. Νήµατα: Όταν ένας εξυπηρετητής αποδέχεται µια σύνδεση, δηµιουργεί, εν γένει, ένα νέο νήµα µέσω του οποίου θα επικοινωνεί µε το νέο πελάτη. Το πλεονέκτηµα της χρήσης ενός ξεχωριστού νήµατος για κάθε πελάτη είναι ότι ο εξυπηρετητής µπορεί να φράξει αναµένοντας δεδοµένα εισόδου, χωρίς να καθυστερεί άλλους πελάτες. Παράδειγµα επικοινωνίας µε stream sockets SERVER s=socket(ip4 ή IP6,DGRAM,πρωτόκολλο) CLIENT s=socket( ) bind(s,διεύθυνση,µήκος-διεύθυνσης) listen(s,max-connections) connect(s,διεύθυνση,µήκος-διεύθυνσης) s2=accept(s,ο πελάτης,µέγεθος) send(s,buffer,count,0) recv(s2,buffer,maxn,0) close(s2) close(s) 16

17 Η send είναι ασύγχρονη (δεν περιµένει). Η recv είναι σύγχρονη (περιµένει). 2.3 Τήλε-κλήση υποπρογράµµατος (RPC) Βασική λειτουργία της RPC Σύνταξη Η τήλε-κλήση υποπρογράµµατος έχει γενικά τη µορφή: call όνοµα-υποπρογράµµατος(παράµετροι τιµής; παράµετροι αποτελέσµατος) Ο πελάτης φράζεται λόγω της call µέχρι να λάβει την επιβεβαίωση. Το αποµακρυσµένο υποπρόγραµµα είναι η διεργασία εξυπηρετητή η οποία εκτελείται στον αποµακρυσµένο Η/Υ. Φράζεται µε τη receive µέχρι να λάβει ένα µήνυµα από τον πελάτη και παραµέτρους. Κατόπιν, ο εξυπηρετητής στέλνει ένα reply() όταν τελειώσει την εργασία του. receive όνοµα-υποπρογράµµατος(παράµετροι εισόδου; παράµετροι εξόδου) reply(ο καλών, παράµετροι εξόδου) Σηµασιολογία Η καλούσα διεργασία καλεί και µεταβιβάζει ορίσµατα στο υποπρόγραµµα και φράζεται ενώ το υποπρόγραµµα εκτελείται. Όταν το υποπρόγραµµα τερµατίσει επιστρέφει τα αποτελέσµατα στην καλούσα διεργασία. Ο εξυπηρετητής φράζεται περιµένοντας το µήνυµα που περιέχει τα ορίσµατα. Όταν το λάβει αποσπά τα ορίσµατα από το µήνυµα και µεταβιβάζει ορίσµατα και έλεγχο στο υποπρόγραµµα. Τα αποτελέσµατα αποστέλλονται στον πελάτη. Το ακόλουθα ζητήµατα αφορούν τις ιδιότητες (χαρακτηριστικά) του RPC που πρέπει να ληφθούν υπ' όψη στη σχεδίαση ενός RPC συστήµατος, ώστε να επιτευχθεί η διαφάνεια. 17

18 έσιµο (binding): Το δέσιµο παρέχει σύνδεση µεταξύ του ονόµατοςυποπρογράµµατος και την τοποθεσία του αποµακρυσµένου υποπρογράµµατος. ιαφάνεια επικοινωνίας: Οι χρήστες πρέπει να είναι ανήµεροι ότι το υποπρόγραµµα που καλούν είναι αποµακρυσµένο. Υπάρχουν τρεις (3) δυσκολίες στην επίτευξη διαφάνειας: α) η ανίχνευση και διόρθωση λαθών οφειλοµένων σε αποτυχία της επικοινωνίας και του Η/Υ, β) η µεταβίβαση παραµέτρων και γ) χειρισµός των εξαιρέσεων. Η αποτυχία επικοινωνίας και του Η/Υ έχουν ως αποτέλεσµα ασυνεπή δεδοµένα λόγω της µερικής ολοκλήρωσης των διεργασιών. Η λύση σ' αυτό το πρόβληµα επαφίεται συχνά στον προγραµµατιστή εφαρµογών. Η µεταβίβαση παραµέτρων στα περισσότερα συστήµατα περιορίζεται στη χρήση παραµέτρων τιµής. Ο χειρισµός των εξαιρέσεων είναι ένα πρόβληµα που και αυτό σχετίζεται µε την ανοµοιογένεια. Οι διαθέσιµες εξαιρέσεις στις διάφορες γλώσσες προγραµµατισµού διαφέρουν και πρέπει να περιοριστούν στο χαµηλότερο κοινό παρονοµαστή. Ταυτοχρονισµός: Οι µηχανισµοί ταυτοχρονισµού δεν πρέπει να εµποδίζουν τους µηχανισµούς επικοινωνίας. Πελάτες και εξυπηρετητές µονονηµατικοί (single threaded), που φράζονται ενώ περιµένουν τα αποτελέσµατα από το αποµακρυσµένο υποπρόγραµµα, µπορούν να προκαλέσουν σηµαντικές καθυστερήσεις. Αυτές οι καθυστερήσεις µπορούν να επιδεινωθούν από περαιτέρω κλήσεις αποµακρυσµένων υποπρογραµµάτων στον εξυπηρετητή. Τα νήµατα επιτρέπουν τον εξυπηρετητή να εκτελέσει κλήσεις από περισσότερους πελάτες ταυτόχρονα. Ανοµοιογένεια: ιαφορετικοί Η/Υ µπορεί να έχουν διαφορετική αναπαράσταση δεδοµένων, µπορεί να εκτελούν διαφορετικά λειτουργικά συστήµατα ή τα αποµακρυσµένα υποπρογράµµατα µπορεί να έχουν γραφεί σε διαφορετική γλώσσα προγραµµατισµού. Η διεπαφή ενός αποµακρυσµένου υποπρογράµµατος εξυπηρετεί στη σύσταση (συγκρότηση) συµφωνίας µεταξύ των επικοινωνούντων διεργασιών ως προς των τύπο των ορισµάτων, τον τύπο των εξαιρέσεων, τον έλεγχο τύπων και την αυτόµατη µετατροπή από µια αναπαράσταση δεδοµένων σε µια άλλη, όπου απαιτείται. 18

19 Γενικά RPC καταδεικνύει έναν απλούστερο τρόπο κατασκευής κατανεµηµένων προγραµµάτων από τη µεταβίβαση µηνυµάτων, διότι αφαιρεί τις λεπτοµέρειες επικοινωνίας και µεταβίβασης. Η ιδέα είναι να φαίνεται η αποµακρυσµένη κλήση σαν τοπική. ηλαδή η RPC να είναι διαφανής που σηµαίνει ότι η καλούσα διεργασία να µην είναι ενήµερη ότι το κληθέν υποπρόγραµµα εκτελείται σε άλλο Η/Υ. Συνήθης κλήση υποπρογράµµατος Ας υποθέσουµε ότι ένα πρόγραµµα χρειάζεται να διαβάσει µια εγγραφή από ένα αρχείο. Ο προγραµµατιστής τοποθετεί µια κλήση της συνάρτησης read(fd,but,nbytes) στο πρόγραµµα. Σε ένα προσωπικό Η/Υ ο κώδικας της read() αποσπάται από µια βιβλιοθήκη, µε το διασυνδέτη, ο οποίος τον ενώνει µε το υπόλοιπο πρόγραµµα. Ο κώδικας της read() γενικά καλεί την αντίστοιχη read του συστήµατος. Με άλλα λόγια η read() λειτουργεί ως διεπαφή του προγράµµατος µε το λειτουργικό σύστηµα. Στέλεχος πελάτη και εξυπηρετητή Η RPC επιτυγχάνει τη διαφάνεια ε ανάλογο τρόπο. Αν το αρχείο βρίσκεται σε άλλο Η/Υ τότε µπορεί να γίνει κλήση της τοπικής read(). Για το σκοπό αυτό, µια διαφορετική έκδοση της read(), που ονοµάζεται στέλεχος-πελάτη έχει το τοποθετηθεί στη βιβλιοθήκη. Όπως και στην απλή περίπτωση χρησιµοποιείται η ακολουθία κλήσης όπως φαίνεται στο σχήµα που ακολουθεί: Σχήµα 12. Ακολουθία κλήσης υποπρογράµµατος. 19

20 Στη συνέχεια τοποθετούνται οι παράµετροι σε µήνυµα και ζητάει να σταλεί το µήνυµα στον εξυπηρετητή. Μετά την κλήση της send(), το στέλεχοςπελάτη καλεί τη receive(), το οποίο φράζεται µέχρι να έρθει η επιβεβαίωση. Στον εξυπηρετητή, το λειτουργικό σύστηµα µεταβιβάζει το µήνυµα στο στέλεχος-εξυπηρετητή. Το στέλεχος-εξυπηρετητή είναι παρόµοιο µε το στέλεχος-πελάτη. Είναι ένα κοµµάτι κώδικα που µετατρέπει αιτήµατα που προέρχονται από το διαδίκτυο σε τοπική κλήση υποπρογράµµατος. Κατά κανόνα το στέλεχος-εξυπηρετητή έχει καλέσει τη receive() και έχει φράξει περιµένοντας τα εισερχόµενα µηνύµατα. Όταν ληφθεί ένα µήνυµα, το στέλεχος-εξυπηρετητή αποσπά τις παραµέτρους και καλεί το υποπρόγραµµα. Άρα τα δεδοµένα του σχήµατος 12 βρίσκονται στη στοίβα. Ο εξυπηρετητής εκτελεί το υποπρόγραµµα κει µετά επιστρέφει το αποτέλεσµα στον καλούντα. Στη δική µας περίπτωση γεµίζει το buf µε δεδοµένα. Αυτός ο buf ανήκει στον εξυπηρετητή. Το στέλεχος-εξυπηρετητή τοποθετεί το buf σε µήνυµα και καλεί την send() να το µεταβιβάσει στον πελάτη. Μετά από αυτό, το στέλεχος-εξυπηρετητή συνήθως καλεί τη receive() και περιµένει για το επόµενο αίτηµα. Όταν το µήνυµα φτάσει στον πελάτη, το λειτουργικό σύστηµα βλέπει σε ποια διεργασία απευθύνεται, παραδίδει το µήνυµα στο στέλεχος-πελάτη και το ξεµπλοκάρει. Το στέλεχος-πελάτη αφαιρεί τα δεδοµένα από το µήνυµα και τα αντιγράφει στο buf του καλούντα. Ο καλών επιστρέφει µετά το read() και το µόνο που ξέρει είναι ότι ελήφθησαν τα δεδοµένα, αλλά αγνοεί την όλη διαδικασία Μεταβίβαση παραµέτρων Παράµετροι τιµής Η τοποθέτηση παραµέτρων σε µήνυµα λέγεται στοίχιση παραµέτρων (parameter marshaling). Έστω, για παράδειγµα, το αποµακρυσµένο υποπρόγραµµα add (i,j) το οποίο δέχεται 2 ακέραιους i και j ως παραµέτρους και επιστρέφει το άθροισµά τους. 20

21 Πελάτης Εξυπηρετητής ιεργασία... push j push i call add mov k,ax... Στέλεχοςπελάτη ιεργασία... push j push i call add mov k,ax... k proc int int int add val(i) val(j) k Στέλεχοςεξυπηρετητή proc int int int add val(i) val(j) k k Λειτουργικό σύστηµα Λειτουργικό σύστηµα Σχήµα 13. Τηλεκλήση. Έφ' όσον οι Η/Υ του πελάτη και του εξυπηρετητή είναι ίδιες η δουλειά προχωράει περίφηµα. Όµως, σε ένα µεγάλο κατανεµηµένο σύστηµα, είναι σύνηθες να διαφέρουν οι Η/Υ. Συχνά οι Η/Υ έχουν δική τους αναπαράσταση αριθµών και άλλων δεδοµένων. Επίσης, κάποιοι Η/Υ αριθµούν τα byte από δεξιά προς τ' αριστερά (π.χ. intel). Οπότε χρειάζονται πληροφορίες για το τι είναι ακέραιος και οι άλλοι τύποι, ώστε να µπορεί να γίνει η µετατροπή στην αναπαράσταση του Η/Υ του εξυπηρετητή. Παράµετροι αναφοράς Πως µεταβιβάζονται pointers και γενικά αναφορές; Όπως ξέρουµε ο pointer ή η αναφορά περιέχουν τη διεύθυνση µιας θέσης στη µνήµη του Η/Υ του πελάτη. Άρα τι νόηµα έχει στον Η/Υ του εξυπηρετητή, όταν στην ίδια διεύθυνση σίγουρα υπάρχει ένα άλλο αντικείµενο; Ας ξανά εξετάσουµε το παράδειγµα µε τη συνάρτηση read(). Η δεύτερη παράµετρος είναι η διεύθυνση ενός buffer. Ας υποθέσουµε ότι η διεύθυνσή του είναι 0x0B Είναι φανερό ότι δεν µπορούµε να µεταβιβάσουµε 21

22 την παραπάνω διεύθυνση στον εξυπηρετητή, διότι είναι πολύ πιθανό να είναι η διεύθυνση ενός άλλου αντικειµένου. Μια λύση είναι να τοποθετήσει στο µήνυµα έναν πίνακα τόσων byte όσο το buffer. Ο server µπορεί να αντιγράψει τα δεδοµένα στον πίνακα που παρέλαβε και να τον στείλει πίσω στον πελάτη. Εκεί το στέλεχος-πελάτη θα αντιγράψει τα δεδοµένα στο buffer του προγράµµατος που περιέχεται στην read(). Προσδιορισµός των παραµέτρων και δηµιουργία στελέχους Αυτό που διαπιστώσαµε µέχρι τώρα είναι ότι ο καλών και ο κληθείς πρέπει να έχουν συµφωνήσει για τη µορφή των µηνυµάτων και ότι ακολουθούν τα ίδια ακριβώς βήµατα όταν χειρίζονται σύνθετες δοµές δεδοµένων. ηλαδή, και οι δύο πλευρές πρέπει να ακολουθήσουν το ίδιο πρωτόκολλο, διαφορετικά το RPC δε θα εκτελεστεί σωστά. π.χ. Synartisi(char x,float y,int Z[5]) { } Έστω ότι το πρωτόκολλο προσδιορίζει ότι στο µήνυµα ο χαρακτήρας θα είναι το δεξιότερο byte ενός double word (4 byte), ο πραγµατικός αριθµός θα είναι ένα double word και ο πίνακας θα καταλαµβάνει 5 double words των οποίων θα προηγείται ένας ακέραιος που θα δηλώνει το πλήθος των στοιχείων. Βλέπε σχήµα 14. Σχήµα 14. Μήνυµα. Και τα δύο στελέχη πρέπει να γνωρίζουν την παραπάνω µορφή του µηνύµατος. 22

23 Ο προσδιορισµός της µορφής ενός µηνύµατος είναι ένας παράγων, άλλα δεν είναι ο µοναδικός. Αυτό που επίσης χρειάζεται είναι συµφωνία µεταξύ πελάτη και εξυπηρετητή για την αναπαράσταση των απλών τύπων, όπως ακεραίων, πραγµατικών, χαρακτήρων, λογικών, κτλ. Π.χ. οι ακέραιοι αναπαρίσταται µε τη µορφή "συµπλήρωµα ως προς 2", οι πραγµατικοί µε την IEEE 754 µορφή. Όλοι αριθµοί αποθηκεύονται µε την little endian µορφή. Οι χαρακτήρες µε την 16-bit unicode µορφή, κτλ. Με τις πρόσθετες πληροφορίες µπορούν τα µηνύµατα να διερµηνευθούν µε σαφήνεια. Ο πελάτης και ο εξυπηρετητής πρέπει να συµφωνήσουν για ένα ακόµη παράγοντα: την ανταλλαγή µηνυµάτων. Να χρησιµοποιήσουν ροές ή datagrams Ασύγχρονο RPC Υπάρχουν εργασίες οι οποίες δεν επιστέψαν κάποιο αποτέλεσµα: µεταφορά χρηµάτων από λογαριασµό σε λογαριασµό, εισαγωγή γραµµών σε Β, έναρξη batch επεξεργασίας, κτλ. Για το λόγω αυτό παρέχεται η δυνατότητα της ασύγχρονης RPC. Ο πελάτης εκτελεί τη RPC και περιµένει την επιβεβαίωση από τον εξυπηρετητή. Ο εξυπηρετητής µόλις λάβει το αίτηµα στέλνει την επιβεβαίωση παραλαβής του αιτήµατος και συνεχίζει µε την κλήση του υποπρογράµµατος. Ο πελάτης µόλις λάβει την επιβεβαίωση επιστρέφει από την κλήση και συνεχίζει µε άλλες εργασίες. Αν ο πελάτης που εκτελεί την RPC δεν περιµένει ούτε για επιβεβαίωση τότε ονοµάζουµε αυτό το είδος RPC-µονόδροµο (one-way RPC). 2.4 ιευθυνσιοδότηση Ένα σηµαντικό ζήτηµα στη δια-διεργασιακή επικοινωνία είναι η διευθυνσιοδότηση: προσδιορισµός των διεργασιών που εµπλέκονται στην επικοινωνία. Κάθε µήνυµα πρέπει να ονοµάζει τη διεργασία παραλήπτη. Ονοµασία Σε ένα κατανεµηµένο σύστηµα, η υλοποίηση ενός συστήµατος ονοµασίας είναι συχνά κατανεµηµένο σε πολλαπλές µηχανές. Ο τρόπος κατανοµής παίζει ρόλο κλειδί στην απόδοση και την κλιµάκωση του συστήµατος ονοµασίας. Υπάρχουν πολλοί τρόποι χρήσης ονοµάτων στα κατανεµηµένα συστήµατα. Εµείς θα εξετάσουµε µερικά γενικά ζητήµατα, σε σχέση µε την 23

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

ΚΑΤΑΝΕΜΗΜΕΝΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΤΑΝΕΜΗΜΕΝΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ρ Ζαφείριος Καραΐσκος ΤΕΙ Λάρισας 9/6/2009 1. ΕΙΣΑΓΩΓΗ 1.α. Ορισµός Λ.Σ. για Η/Υ ενός επεξεργαστή "Λειτουργικό σύστηµα είναι µια οµάδα προγραµµάτων τα οποία επικοινωνούν

Διαβάστε περισσότερα

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

Αποµακρυσµένη κλήση διαδικασιών Αποµακρυσµένηκλήση διαδικασιών Τοπική κλήση διαδικασιών Αποµακρυσµένη κλήση διαδικασιών Μεταβίβαση παραµέτρων Πρωτόκολλα επικοινωνίας Αντιγραφή µηνυµάτων Προδιαγραφές διαδικασιών RPC στο σύστηµα DCE Κατανεµηµένα

Διαβάστε περισσότερα

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

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1 Εισαγωγή Υλισµικό Λογισµικό Αρχές σχεδίασης ιαφάνεια Κλιµάκωση Παρεχόµενες υπηρεσίες Μοντέλο πελάτη εξυπηρετητή Μοντέλο πελάτη εξυπηρετητή τριών επιπέδων Κατανοµή επεξεργασίας Κατανεµηµένα Συστήµατα 01-1

Διαβάστε περισσότερα

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

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που 7.7 Πρωτόκολλο ARP 1 ύο είδη διευθύνσεων: MAC - IP Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που µπορεί

Διαβάστε περισσότερα

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap Version 2.00 Επιμέλεια Σημειώσεων: Δημήτρης Κόγιας Πατρικάκης Χαράλαμπος Πίνακας περιεχομένων TELNET... 2 PING...

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Κεφάλαιο 7.3. Πρωτόκολλο TCP

Κεφάλαιο 7.3. Πρωτόκολλο TCP Κεφάλαιο 7.3 Πρωτόκολλο TCP Πρωτόκολλο TCP Το πρωτόκολλο Ελέγχου Μετάδοσης (Transmission Control Protocol, TCP) είναι το βασικό πρωτόκολο του Επιπέδου Μεταφοράς του μοντέλου TCP/IP. Παρέχει υπηρεσίες προσανατολισμένες

Διαβάστε περισσότερα

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

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα Η Υλοποίηση της Επικοινωνίας στα Κατανεµηµένα Συστήµατα ιαφάνειες στα πλαίσια του µαθήµατος: Κατανεµηµένα Συστήµατα Ε Εξάµηνο, Τµήµα Πληροφορικής και Τεχνολογίας Υπολογιστών, ΤΕΙ Λαµίας Πέτρος Λάµψας 2002

Διαβάστε περισσότερα

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος? Μετάδοση Δεδομένων Δίκτυα Υπολογιστών 68 Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της Απάντηση : Στα δίκτυα μεταγωγής κυκλώματος (circuit switching networks), η μετάδοση των

Διαβάστε περισσότερα

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

Κατανεµηµένασυστήµατα αρχείων Κατανεµηµένασυστήµατα αρχείων Θέµατα σχεδίασης ιεπαφή υπηρεσίας αρχείων και ευρετηρίων Ονόµατα και αναγνωριστικά Οργάνωση εξυπηρετητών Σηµασιολογία (κατα)µερισµού αρχείων Ενταµίευση αρχείων Συνέπεια συστήµατος

Διαβάστε περισσότερα

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

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06. Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων Εισαγωγή Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 «Κατανεµηµένα Συστήµατα Αρχείων (1/2)» ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Σύστηµα αρχείων Αποθήκευση, προσπέλαση και διαχείριση δεδοµένων

Διαβάστε περισσότερα

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΣΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ Γ Τάξη Ε.Π.Α.Λ.

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΣΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ Γ Τάξη Ε.Π.Α.Λ. ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΣΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ 2016 Γ Τάξη Ε.Π.Α.Λ. ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις και δίπλα το γράµµα Σ, αν είναι σωστή, ή το γράµµα

Διαβάστε περισσότερα

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

Πρωτόκολλα Διαδικτύου Πρωτόκολλα Διαδικτύου Ερωτήσεις Ασκήσεις Επικοινωνίες Δεδομένων Μάθημα 3 ο Ερωτήσεις 1. Τι είναι το intranet και ποια τα πλεονεκτήματα που προσφέρει; 2. Τι δηλώνει ο όρος «TCP/IP»; 3. Να αναφέρετε τα πρωτόκολλα

Διαβάστε περισσότερα

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

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας Δίκτυα Υπολογιστών Firewalls Χάρης Μανιφάβας 1 Επικοινωνία Βασίζεται στη μεταβίβαση μηνυμάτων (λόγω απουσίας διαμοιραζόμενης μνήμης) Απαιτείται συμφωνία φόρμας μηνυμάτων Πρότυπο Στόχος τυποποίησης = Συνεργασία

Διαβάστε περισσότερα

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.5 Πρωτόκολλο IP 38. Τι είναι το πρωτόκολλο ιαδικτύου (Internet Protocol, IP); Είναι το βασικό πρωτόκολλο του επιπέδου δικτύου της τεχνολογίας TCP/IP. Βασίζεται στα αυτοδύναµα

Διαβάστε περισσότερα

14. Δικτύωση με Java Δικτύωση με Java Sockets Δημιουργία της σύνδεσης Διευθυνσιοδότηση της σύνδεσης

14. Δικτύωση με Java Δικτύωση με Java Sockets Δημιουργία της σύνδεσης Διευθυνσιοδότηση της σύνδεσης 14. Δικτύωση με Java Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να δημιουργείτε έναν ελάχιστο εξυπηρέτη TCP/IP σε Java Να δημιουργείτε έναν ελάχιστο εξυπηρετούμενο TCP/IP σε Java Να κατανοείτε πώς υλοποιούνται

Διαβάστε περισσότερα

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

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1 Αµοιβαίοςαποκλεισµός Εισαγωγή Συγκεντρωτική προσέγγιση Κατανεµηµένη προσέγγιση Αλγόριθµος Lamport Αλγόριθµος Ricart-Agrawala Προσέγγιση µεταβίβασης σκυτάλης Αλγόριθµος LeLann Αλγόριθµος Raymond Αλγόριθµος

Διαβάστε περισσότερα

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα Στόχοι κεφαλαίου ίκτυα υπολογιστών (Κεφαλαιο 15 στο βιβλιο) Περιγραφή των κύριων θεµάτων σχετικά µε τα δίκτυα υπολογιστών Αναφορά στα διάφορα είδη δικτύων Περιγραφή των διαφόρων τοπολογιών των τοπικών

Διαβάστε περισσότερα

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET Κεφάλαιο 4: Τεχνικές Μετάδοσης ΜΕΤΑΓΩΓΗ Τεχνική µεταγωγής ονομάζεται ο τρόπος µε τον οποίο αποκαθίσταται η επικοινωνία ανάµεσα σε δύο κόµβους με σκοπό την

Διαβάστε περισσότερα

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES)

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Εισαγωγή H κεντρική μονάδα επεξεργασίας (ΚΜΕ) και η κύρια μνήμη αποτελούν τα βασικά δομικά στοιχεία ενός υπολογιστικού συστήματος. Η πρώτη εκτελεί εντολές χειρισμού δεδομένων

Διαβάστε περισσότερα

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

Επικοινωνία Client/Server Απομακρυσμένη Κλήση Διαδικασιών Επικοινωνία Client/Server Απομακρυσμένη Κλήση Διαδικασιών Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Επικοινωνία -RPC 1 Εισαγωγή Το μοντέλο client-server παρέχει έναν μηχανισμό δόμησης

Διαβάστε περισσότερα

Α2. Να γράψετε τους αριθμούς 1-5 από τη Στήλη Α και δίπλα το γράμμα της Στήλης Β που δίνει τη σωστή αντιστοίχηση.

Α2. Να γράψετε τους αριθμούς 1-5 από τη Στήλη Α και δίπλα το γράμμα της Στήλης Β που δίνει τη σωστή αντιστοίχηση. ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ / Γ- ΕΠΑ.Λ. ΗΜΕΡΟΜΗΝΙΑ: 21-02- 2016 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι. ΜΙΧΑΛΕΑΚΟΣ-Α.ΚΑΤΡΑΚΗ ΘΕΜΑ Α. A1. Να γράψετε το γράμμα καθεμιάς από τις παρακάτω προτάσεις και δίπλα τη

Διαβάστε περισσότερα

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP Κεφάλαιο 7 Διαδικτύωση-Internet 7.2 Τεχνολογία TCP/IP Τι δηλώνει ο όρος «TCP/IP»; Ο όρος TCP/IP αναφέρεται σε μια ομάδα ομοειδών πρωτοκόλλων που χρησιμοποιούνται για την επικοινωνία των δικτύων υπολογιστών

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Ηυιοθέτησητης τεχνολογίαςκαι αρχιτεκτονικής TCP/IP δεν έρχεται σε σύγκρουσηµε το µοντέλο του OSI και αυτό γιατί και τα δυο συστήµατααναπτύχθηκαν συγχρόνως. Παρόλα αυτά, υπάρχουν ορισµένες ουσιώδεις διαφορές

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ ΕΡΩΤΗΣΕΙΣ - ΑΣΚΗΣΕΙΣ 1. Για να διεκπεραιωθεί η μεταφορά των πακέτων από την πηγή στον προορισμό μεταξύ των κόμβων του επικοινωνιακού υποδικτύου απαιτείται η

Διαβάστε περισσότερα

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Τζικούλης Βασίλειος Credits:Γιάννης Μακρυδάκης Συναλλαγές Η ταυτόχρονες συναλλαγές (δοσοληψίες, transactions) µε µια

Διαβάστε περισσότερα

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

ικτύωσησε Java Κατανεµηµένα Συστήµατα 08-1 ικτύωσησε Java ιευθύνσεις IP Υποδοχές ρεύµατος Σειριακοποίηση αντικειµένων Υποδοχές δεδοµενογραφηµάτων Υποδοχές πολυεκποµπής Οµοιόµορφοι Εντοπιστές Πόρων Κατανεµηµένα Συστήµατα 08-1 Υποδοχές σε C ικτύωσησε

Διαβάστε περισσότερα

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση 6.1 Επεκτείνοντας το δίκτυο Τοπικά δίκτυα (LAN): επικοινωνία με περιορισμένη απόσταση κάλυψης (μικρή εμβέλεια) Δίκτυα Ευρείας Περιοχής (WAN): επικοινωνία σε ευρύτερη γεωγραφική κάλυψη. Από την άποψη του

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών 1 ίκτυα μικρά και μεγάλα Ένα δίκτυο υπολογιστών (computer network) είναι ένας συνδυασμός συστημάτων (δηλαδή, υπολογιστών),

Διαβάστε περισσότερα

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

7.9 ροµολόγηση. Ερωτήσεις 7.9 ροµολόγηση Ερωτήσεις 1. Να δώσετε τον ορισµό της δροµολόγησης; 2. Από τι εξαρτάται η χρονική στιγµή στην οποία λαµβάνονται οι αποφάσεις δροµολόγησης; Να αναφέρετε ποια είναι αυτή στην περίπτωση των

Διαβάστε περισσότερα

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Δίκτυα υπολογιστών (και το Διαδίκτυο) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι ένα δίκτυο υπολογιστών;

Διαβάστε περισσότερα

7.7 Πρωτόκολλο ARP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.7 Πρωτόκολλο ARP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.7 Πρωτόκολλο ARP 73. Ποιο είναι το έργο του Πρωτοκόλλου Μετατροπής ιεύθυνσης (Address Resolution Protocol ARP); Η µετατροπή των ΙΡ διευθύνσεων στις αντίστοιχες φυσικές

Διαβάστε περισσότερα

Επίπεδο Δικτύου: Διαδικτύωση

Επίπεδο Δικτύου: Διαδικτύωση Επίπεδο Δικτύου: Διαδικτύωση Μάθημα «Δίκτυα Υπολογιστών» Τμήμα Πληροφορικής Οικονομικό Πανεπιστήμιο Αθηνών Εαρινό Εξάμηνο 2013-14 Γεώργιος Ξυλωμένος Γεώργιος Δ. Σταμούλης Βασίλειος Σύρης Εισαγωγή Υπάρχει

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας. Μοντέλο TCP/IP. Ενότητα E. Συστήµατα Επικοινωνίας

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας. Μοντέλο TCP/IP. Ενότητα E. Συστήµατα Επικοινωνίας Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας ίκτυα Η/Υ Μοντέλο TCP/IP Ενότητα E ρ. Ε. Μάγκος Συστήµατα Επικοινωνίας (Ε) (PC) (N) Επικοινωνίες: Εφαρµογές Υπολογιστές ίκτυα πολλές πολλοί N A N

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15. Δίκτυα υπολογιστών. (και το Διαδίκτυο)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15. Δίκτυα υπολογιστών. (και το Διαδίκτυο) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Δίκτυα υπολογιστών (και το Διαδίκτυο) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι ένα δίκτυο υπολογιστών;

Διαβάστε περισσότερα

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr Η έννοια της διεργασίας ιεργασία (process) είναι ο µηχανισµός εκτέλεσης ενός προγράµµατος σε ένα λειτουργικό σύστηµα. Η διεργασία είναι µια ενεργή

Διαβάστε περισσότερα

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

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής Συστήµατα Επικοινωνίας. Μοντέλο TCP/IP. Ενότητα E. Πόσοι εµπλέκονται σε ένα Σύστηµα Επικοινωνίας

Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής Συστήµατα Επικοινωνίας. Μοντέλο TCP/IP. Ενότητα E. Πόσοι εµπλέκονται σε ένα Σύστηµα Επικοινωνίας Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής ίκτυα Η/Υ Συστήµατα Επικοινωνίας (Ε) (PC) (N) Επικοινωνίες: Εφαρµογές Υπολογιστές ίκτυα Μοντέλο TCP/IP πολλές πολλοί N A N B Ενότητα E PC A PC B PC D PC E E A E B

Διαβάστε περισσότερα

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

Συνεχής ροή πολυµέσων Συνεχής ροή πολυµέσων Εισαγωγή ικτυακά πρωτόκολλα Πολυµέσα και δίκτυα Συνεχής ροή Ροή από εξυπηρετητές ιστοσελίδων Ροή από εξυπηρετητές µέσων Πρωτόκολλο RTSP Πρωτόκολλο RTP οµή πακέτων RTP Πρωτόκολλο RTCP

Διαβάστε περισσότερα

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol)

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol) Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας-Βιβλιοθηκονοµίας Κέρκυρα ίκτυα - Internet 2 Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) ΜηχανέςΑναζήτησηςστοWeb Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία

Διαβάστε περισσότερα

7.11 Πρωτόκολλα Εφαρµογής. 7.11.2 Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.11 Πρωτόκολλα Εφαρµογής. 7.11.2 Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.11 Πρωτόκολλα Εφαρµογής 104. Αναφέρετε ονοµαστικά τις πιο χαρακτηριστικές εφαρµογές που υποστηρίζει η τεχνολογία TCP/IP οι οποίες είναι διαθέσιµες στο ιαδίκτυο 1. Ηλεκτρονικό

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) Συσκευές αποθήκευσης Ένας υπολογιστής προκειµένου να αποθηκεύσει δεδοµένα χρησιµοποιεί δύο τρόπους αποθήκευσης: Την Κύρια Μνήµη Τις συσκευές µόνιµης αποθήκευσης (δευτερεύουσα

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7.4 Πρωτόκολλο Μέχρι τώρα περιγράψαμε συνδέσεις, που χρησιμοποιούν το πρωτόκολλο TCP. Θυμηθείτε, ότι το TCP είναι υπεύθυνο για το τεμαχισμό των μηνυμάτων σε τμήματα και την επανασύνδεση τους στον προορισμό.

Διαβάστε περισσότερα

Σκοπιµότητα των firewalls

Σκοπιµότητα των firewalls Σκοπιµότητα των firewalls Παρέχουν προστασία των εσωτερικών δικτύων από απειλές όπως: Μη εξουσιοδοτηµένη προσπέλαση των δικτυακών πόρων: όταν επίδοξοι εισβολείς προσπαθούν να εισχωρήσουν στο δίκτυο και

Διαβάστε περισσότερα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων

Διαβάστε περισσότερα

Πληροφορική 2. Δομές δεδομένων και αρχείων

Πληροφορική 2. Δομές δεδομένων και αρχείων Πληροφορική 2 Δομές δεδομένων και αρχείων 1 2 Δομή Δεδομένων (data structure) Δομή δεδομένων είναι μια συλλογή δεδομένων που έχουν μεταξύ τους μια συγκεκριμένη σχέση Παραδείγματα δομών δεδομένων Πίνακες

Διαβάστε περισσότερα

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η. Αρχές Δικτύων Επικοινωνιών

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η. Αρχές Δικτύων Επικοινωνιών Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η Αρχές Δικτύων Επικοινωνιών Τι είναι επικοινωνία; Είναι η διαδικασία αποστολής πληροφοριών από ένα πομπό σε κάποιο δέκτη. Η Τηλεπικοινωνία είναι η επικοινωνία από απόσταση (τηλε-).

Διαβάστε περισσότερα

ιαχείριση Τηλεφωνικών Κλήσεων

ιαχείριση Τηλεφωνικών Κλήσεων ιαχείριση Τηλεφωνικών Κλήσεων 1 Διαχει ριση Τηλεφωνικω ν Κλη σεων ΓΕΝΙΚΗ ΠΕΡΙΓΡΑΦΗ... 3 ΔΟΜΗ ΧΡΗΣΤΩΝ ΚΑΙ ΔΙΚΑΙΩΜΑΤΑ ΕΠΙ ΤΩΝ ΤΗΛΕΦΩΝΙΚΩΝ ΚΛΗΣΕΩΝ... 3 ΣΧΗΜΑΤΙΚΗ ΑΠΕΙΚΟΝΙΣΗ... 4 ΕΙΣΕΡΧΟΜΕΝΕΣ ΚΛΗΣΕΙΣ... 5

Διαβάστε περισσότερα

7.8 Σύστηµα ονοµάτων περιοχών (Domain Name System, DNS)

7.8 Σύστηµα ονοµάτων περιοχών (Domain Name System, DNS) 7.8 ύστηµα ονοµάτων περιοχών (Domain Name System, DNS) Ερωτήσεις 1. Γιατί χρησιµοποιούµε συµβολικά ονόµατα αντί για τις διευθύνσεις; 2. ε τι αναφέρονται το όνοµα και η διεύθυνση ενός υπολογιστή; Πώς και

Διαβάστε περισσότερα

Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης. Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA

Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης. Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA 1. Εισαγωγή Τι είναι Νήµα; Κάθε νήµα εκτέλεσης είναι ουσιαστικά

Διαβάστε περισσότερα

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

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ (Kεφ. 10) ΑΡΧΕΣ ΜΕΤΑΓΩΓΗΣ ΠΑΚΕΤΩΝ Τεχνική Μεταγωγής Μέγεθος Πακέτου Σύγκριση Μεταγωγής Κυκλώµατος και Μεταγωγής Πακέτου Εξωτερική και Εσωτερική Λειτουργία Βιβλίο Μαθήµατος: Επικοινωνίες

Διαβάστε περισσότερα

Επικοινωνία Client/Server

Επικοινωνία Client/Server Επικοινωνία Client/Server Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Επικοινωνία - Client/Server 1 Μοντέλο Πελάτη-Εξυπηρετητή Βασική ιδέα: να δομηθεί το λειτουργικό σύστημα ως συνεργαζόμενες

Διαβάστε περισσότερα

Εισαγωγή στην επιστήµη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Εισαγωγή στην επιστήµη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ Εισαγωγή στην επιστήµη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ 1 Αριθµητικό Σύστηµα! Ορίζει τον τρόπο αναπαράστασης ενός αριθµού µε διακεκριµένα σύµβολα! Ένας αριθµός αναπαρίσταται διαφορετικά σε κάθε σύστηµα,

Διαβάστε περισσότερα

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Υπολογιστικό Σύστημα Λειτουργικό Σύστημα Αποτελεί τη διασύνδεση μεταξύ του υλικού ενός υπολογιστή και του χρήστη (προγραμμάτων ή ανθρώπων). Είναι ένα πρόγραμμα (ή ένα σύνολο προγραμμάτων)

Διαβάστε περισσότερα

a. b. c. d ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

a. b. c. d ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7.7 Πρωτόκολλο Μέχρι τώρα έχουμε αναφέρει, ότι, για να μεταδοθούν τα αυτοδύναμα πακέτα στο φυσικό μέσο, πρέπει αυτά να μετατραπούν σε πακέτα φυσικού δικτύου (π.χ. Ethernet). Όμως, δεν έχει ειπωθεί τίποτε

Διαβάστε περισσότερα

ΠΡΩΤΟΚΟΛΛΟ TCP/IP ΜΑΚΡΟΠΟΥΛΟΣ ΝΙΚΟΛΑΟΣ

ΠΡΩΤΟΚΟΛΛΟ TCP/IP ΜΑΚΡΟΠΟΥΛΟΣ ΝΙΚΟΛΑΟΣ ΠΡΩΤΟΚΟΛΛΟ TCP/IP ΜΑΚΡΟΠΟΥΛΟΣ ΝΙΚΟΛΑΟΣ Εισαγωγή ΑRPANET (1969) Τεχνική Μεταγωγής Πακέτων INTERNETTING PROJECT (1973) Σύνδεση διαφορετικών δικτύων Πρωτόκολλα IP, TCP (Κανόνες Ανταλλαγής Δεδομένων) Προσθήκη

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών οσοληψίες Επεξεργασία οσοληψιών Ηταυτόχρονη εκτέλεση προγραµµάτων χρηστών είναι απαραίτητη για την καλή απόδοση ενός Σ Β Επειδή οι προσπελάσεις στο δίσκο είναι συχνές και σχετικά αργές, είναι σηµαντικό

Διαβάστε περισσότερα

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

Σύστηµα CORBA. Κατανεµηµένα Συστήµατα 18-1 Σύστηµα CORBA οµή συστήµατος Μεταβίβαση παραµέτρων Μοντέλα επικοινωνίας υναµικές κλήσεις Αναφορές αντικειµένων Ονόµατα αντικειµένων ιαχείριση αντικειµένων Υλοποίηση συστηµάτων CORBA Κατανεµηµένα Συστήµατα

Διαβάστε περισσότερα

Διάλεξη 12: Διάχυση Μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 12: Διάχυση Μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 12: Διάχυση Μηνυμάτων ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Ορισμός Προσομοίωσης Τι θα δούμε σήμερα Προσομοίωση Υπηρεσίας Διάχυσης Μηνυμάτων Ιδιότητες Διάταξης Μηνυμάτων ΕΠΛ432: Κατανεµηµένοι Αλγόριθµοι

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή Εγχειρίδιο Φοιτητών 1. Εισαγωγή Η ηλεκτρονική πλατφόρµα «e-class», αποτελεί ένα ολοκληρωµένο σύστηµα Ασύγχρονης Τηλεκπαίδευσης. Στόχος της είναι παροχή υποδοµών εκπαίδευσης και κατάρτισης ανεξάρτητα από

Διαβάστε περισσότερα

Πρωτόκολλο TCP Διάλεξη Ι

Πρωτόκολλο TCP Διάλεξη Ι Πρωτόκολλο TCP Διάλεξη Ι Εισαγωγή Οι υπηρεσίες μεταβίβασης δεδομένων ανάμεσα σε δύο επικοινωνούντες πόρους κατατάσσονται σε δύο κατηγορίες: Connectionless ή datagram Connection-oriented Οι υπηρεσίες της

Διαβάστε περισσότερα

scanf() scanf() stdin scanf() printf() int float double %lf float

scanf() scanf() stdin scanf() printf() int float double %lf float Εισαγωγή Στον Προγραµµατισµό «C» Είσοδος Δεδοµένων Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Η συνάρτηση scanf() Η συνάρτηση

Διαβάστε περισσότερα

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7 Οι σημειώσεις που ακολουθούν περιγράφουν τις ασκήσεις που θα συναντήσετε στο κεφάλαιο 7. Η πιο συνηθισμένη και βασική άσκηση αναφέρεται στο IP Fragmentation,

Διαβάστε περισσότερα

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

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής 4 φάσεις διαδικτυακών εφαρμογών 1.Εφαρμογές στατικής πληροφόρησης

Διαβάστε περισσότερα

Χαρακτηρισµός Κατανεµηµένων Συστηµάτων

Χαρακτηρισµός Κατανεµηµένων Συστηµάτων Εισαγωγή Χαρακτηρισµός Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Κύπρου

Διαβάστε περισσότερα

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας, Μικροεπεξεργαστές Σημειώσεις Μαθήματος 2013-14 Υπεύθυνος: Δρ Άρης Παπακώστας, Η γλώσσα assembly είναι μια γλώσσα προγραμματισμού χαμηλού επιπέδου για συγκεκριμένους υπολογιστές ή άλλη προγραμματιζόμενη

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία Λειτουργικά Συστήματα Ι Καθηγήτρια Παπαδάκη Αναστασία 2013 1 Ηλεκτρονικός Υπολογιστής αποτελείται: 1. Από Υλικό Hardware (CPUs, RAM, Δίσκοι), & 2. Λογισμικό - Software Και μπορεί να εκτελέσει διάφορες

Διαβάστε περισσότερα

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

Ε-85: Ειδικά Θέµατα Λογισµικού Ε-85: Ειδικά Θέµατα Λογισµικού Προγραµµατισµός Συστηµάτων Υψηλών Επιδόσεων Χειµερινό Εξάµηνο 2009-10 «ιεργασίες και Νήµατα» Παναγιώτης Χατζηδούκας (Π.Δ. 407/80) E-85: Ε.Θ.Λ: Προγραµµατισµός Συστηµάτων

Διαβάστε περισσότερα

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

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Τι είναι ένα Κατανεμημένο Σύστημα; Επικοινωνία, Χρονισμός, Σφάλματα Μοντέλο Ανταλλαγής Μηνυμάτων 1

Διαβάστε περισσότερα

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1 ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Όπως έχουμε ήδη αναφέρει, τα δίκτυα τεχνολογίας / χρησιμοποιούν διεύθυνση 32 bits, προκειμένου να δρομολογήσουν ένα αυτοδύναμο πακέτο στο προορισμό του. Κατά σύμβαση έχει επικρατήσει οι διευθύνσεις να

Διαβάστε περισσότερα

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

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06 Τεχνολογικά Επιτεύγµατα Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 Ανάπτυξη ισχυρών µικροεπεξεργαστών ηµιουργία τοπικών δικτύων υψηλών ταχυτήτων «Εισαγωγή στα Κατανεµηµένα Λειτουργικά Συστήµατα»

Διαβάστε περισσότερα

Αλεξάνδρειο ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής ΔΙΑΔΙΚΤΥΑ ΜΕ TCP / IP. Βίτσας Βασίλειος

Αλεξάνδρειο ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής ΔΙΑΔΙΚΤΥΑ ΜΕ TCP / IP. Βίτσας Βασίλειος ΔΙΑΔΙΚΤΥΑ ΜΕ TCP / IP Βίτσας Βασίλειος Αρχιτεκτονική και φιλοσοφία του Internet Ένα διαδίκτυο TCP/IP παρέχει 3 είδη υπηρεσιών Η διάταξη τους είναι ιεραρχική Ασυνδεσμικό σύστημα παράδοσης ΗυπηρεσίαIP ορίζεται

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου ΚΕΦΑΛΑΙΟ 1.7 Πρωτόκολλα και Αρχιτεκτονική Δικτύου Επικοινωνία δύο σταθμών Ύπαρξη διαδρομής Αποκατάσταση σύνδεσης Ο σταθμός-πηγή πρέπει να ξέρει πότε ο σταθμός-προορισμός είναι έτοιμος να λάβει δεδομένα.

Διαβάστε περισσότερα

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

Πληροφορίες. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06. Εισαγωγή. Στόχοι Κατανεµηµένων Συστηµάτων. ιαφάνεια Πληροφορίες Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 «Επικοινωνία σε Κατανεµηµένα Συστήµατα» Σελίδα µαθήµατος http://www.cs.uoi.g/~phadjido/couss/e-03.htm Βιβλίο Κατανεµηµένα Συστήµατα µε

Διαβάστε περισσότερα

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος 09 1 http://creativecommons.org/licenses/by-nc-nd/3.

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος 09 1 http://creativecommons.org/licenses/by-nc-nd/3. Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET Εφαρµογές - Ιούλιος 09 1 Εισαγωγή στην τεχνολογία TCP/IP Τεχνολογία TCP/IP TCP/IP Πρωτόκολλα TCP/IP ή τεχνολογία TCP/IP ή τεχνολογία ιαδικτύου (Internet)( ιαδίκτυο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95 ΚΕΦΑΛΑΙΟ 4 Τεχνική Ανίχνευσης του ICMP Echo Spoofing Πτυχιακή Εργασία Σελίδα 95 Περιεχόμενα ΕΙΣΑΓΩΓΗ 98 ΜΕΡΟΣ Α: Έλεγχος του Icmp Echo Reply Πακέτου 103 A.1. Ανίχνευση του spoofed Icmp Echo Request Πακέτου.

Διαβάστε περισσότερα

α. Συνόδου β. Μεταφοράς γ. Δικτύου δ. Διασύνδεσης δεδομένων ε. Φυσικού Επιπέδου (Μονάδες 5)

α. Συνόδου β. Μεταφοράς γ. Δικτύου δ. Διασύνδεσης δεδομένων ε. Φυσικού Επιπέδου (Μονάδες 5) ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 30/11/2014 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι. ΜΙΧΑΛΕΑΚΟΣ, Α. ΙΛΕΡΗ ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν γράφοντας δίπλα στο

Διαβάστε περισσότερα

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. α. Πριν εμφανιστεί η τεχνολογία ISDN οι υπηρεσίες φωνής, εικόνας και δεδομένων απαιτούσαν διαφορετικά δίκτυα.

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. α. Πριν εμφανιστεί η τεχνολογία ISDN οι υπηρεσίες φωνής, εικόνας και δεδομένων απαιτούσαν διαφορετικά δίκτυα. ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ ΕΠΑΛ (ΟΜΑΔΑ Α ) & ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΕΠΑΛ (ΟΜΑΔΑ Β ) ΘΕΜΑ Α ΚΥΡΙΑΚΗ 04/05/2014- ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΟΚΤΩ (8) ΕΚΦΩΝΗΣΕΙΣ Α1. Να χαρακτηρίσετε

Διαβάστε περισσότερα

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται

Διαβάστε περισσότερα

Παιχνίδι TCP-IP (περιγραφή πρωτοκόλλων)

Παιχνίδι TCP-IP (περιγραφή πρωτοκόλλων) Παιχνίδι TCP-IP (περιγραφή πρωτοκόλλων) Επιμέλεια : Χ. Πατρικάκης (βασισμένο στην ιδέα του Norman Pendegraft. 2003: The TCP/IP game, Current issues in IT education, Tanya McGill (Ed.). IGI Publishing,

Διαβάστε περισσότερα

Αδιέξοδα (Deadlocks)

Αδιέξοδα (Deadlocks) Αδιέξοδα (Deadlocks) Περίληψη Αδιέξοδα (deadlocks) Τύποι πόρων (preemptable non preemptable) Μοντελοποίηση αδιεξόδων Στρατηγικές Στρουθοκαµηλισµός (ostrich algorithm) Ανίχνευση και αποκατάσταση (detection

Διαβάστε περισσότερα

Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας

Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας Το επίπεδο προτεραιότητας µιας διεργασίας µπορεί να αλλάξει µε χρήση της συνάρτησης nice. Κάθε διεργασία διαθέτει µια τιµή που καλείται

Διαβάστε περισσότερα

Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της

Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της Page 1 of 8 Αναγν. άρθρου: 164015 - Τελευταία αναθεώρηση: Τρίτη, 29 Μαΐου 2007 - Αναθεώρηση: 4.2 Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της δημιουργίας υποδικτύων Συμβουλή συστήματος

Διαβάστε περισσότερα

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

ΑΕΠΠ Ερωτήσεις θεωρίας ΑΕΠΠ Ερωτήσεις θεωρίας Κεφάλαιο 1 1. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε 2. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα 3. Για την επίλυση ενός προβλήματος

Διαβάστε περισσότερα

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

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ ΠΡΩΤΟΚΟΛΛΑ ΙΑ ΙΚΤΥΩΣΗΣ (Kεφ. 15) IPV6 ΠΟΛΛΑΠΛΗ ΑΠΟΣΤΟΛΗ ΙΡ ΠΡΟΒΛΗΜΑΤΑ επί του κεφ. 15 Βιβλίο Μαθήµατος: Επικοινωνίες Υπολογιστών & εδοµένων, William Stallings, 6/e, 2000. ΕΥ -

Διαβάστε περισσότερα

7.7 Πρωτόκολλο ARP. 1. Το πρωτόκολλο ARP μετατρέπει τις διευθύνσεις IP στις αντίστοιχες φυσικές. Σ Λ

7.7 Πρωτόκολλο ARP. 1. Το πρωτόκολλο ARP μετατρέπει τις διευθύνσεις IP στις αντίστοιχες φυσικές. Σ Λ 7.7 Πρωτόκολλο ARP & Ερωτήσεις 1. Ποιος ο ρόλος του Πρωτοκόλλου Μετατροπής Διεύθυνσης (ARP); 2. Τι είναι ο πίνακας ARP, τι πληροφορία περιλαμβάνει και με ποιο τρόπο ενημερώνεται και ποιος ο χρόνος ζωής

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System) ..8 Κατανομή των αρχείων σε συσκευές Ακολουθείται κάποια λογική στην αποθήκευση των αρχείων:.αρχεία που χρησιμοποιούνται συχνά τοποθετούνται στους σκληρούς δίσκους που έχουν μεγάλη ταχύτητα πρόσβασης..αν

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

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

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει;

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει; ΜΑΘΗΜΑ 7 Κλήση αλγορίθμου από αλγόριθμο Αναδρομή Σ χ ο λ ι κ ο Β ι β λ ι ο ΥΠΟΚΕΦΑΛΑΙΟ 2.2.7: ΕΝΤΟΛΕΣ ΚΑΙ ΔΟΜΕΣ ΑΛΓΟΡΙΘΜΟΥ ΠΑΡΑΓΡΑΦΟI 2.2.7.5: Κλήση αλγορίθμου από αλγόριθμο 2.2.7.6: Αναδρομή εισαγωγη

Διαβάστε περισσότερα

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ / ΕΙ ΙΚΟΤΗΤΑΣ

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ / ΕΙ ΙΚΟΤΗΤΑΣ ΤΑΞΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Α.1. 3 η ΤΑΞΗ ΕΠΑ.Λ. (Α Β ΟΜΑ Α) ΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ / ΕΙ ΙΚΟΤΗΤΑΣ Ηµεροµηνία: Κυριακή 8 Απριλίου 2012 ΕΚΦΩΝΗΣΕΙΣ Να γράψετε στο τετράδιο σας τον αριθµό κάθε µίας από τις παρακάτω

Διαβάστε περισσότερα

Έλεγχος Ταυτοχρονισμού

Έλεγχος Ταυτοχρονισμού Έλεγχος Ταυτοχρονισμού Κεφάλαιο 17 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke Ελληνική Μετάφραση: Γεώργιος Ευαγγελίδης 1 Συγκρουσιακώς Σειριοποιήσιμα Χρονοπρογράμματα Δυο χρονοπρογράμματα

Διαβάστε περισσότερα

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

Εικονική Μνήµη. Κεφάλαιο 8. Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi Εικονική Μνήµη Κεφάλαιο 8 Υλικό και δοµές ελέγχου Οι αναφορές στην µνήµη υπολογίζονται δυναµικά κατά την εκτέλεση Ηδιεργασίαχωρίζεταισετµήµατα τα οποία δεν απαιτείται να καταλαµβάνουν συνεχόµενες θέσεις

Διαβάστε περισσότερα

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

Επιµέλεια Θοδωρής Πιερράτος εδοµένα οµές δεδοµένων και αλγόριθµοι Τα δεδοµένα είναι ακατέργαστα γεγονότα. Η συλλογή των ακατέργαστων δεδοµένων και ο συσχετισµός τους δίνει ως αποτέλεσµα την πληροφορία. Η µέτρηση, η κωδικοποίηση,

Διαβάστε περισσότερα

Εισαγωγή Middleware. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (Ε) Εισαγωγή: Θέματα S/W 1

Εισαγωγή Middleware. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (Ε) Εισαγωγή: Θέματα S/W 1 Εισαγωγή Middleware Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Εισαγωγή: Θέματα S/W 1 ΚΛΣ - ΛΣΔ Στην πράξη επιτυχία γνώρισαν τα ΛΣ που ουσιαστικά αντικατέστησαν πλήρως τα απλά συστήματα

Διαβάστε περισσότερα