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

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

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

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

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

Αρχιτεκτονική υπολογιστών

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

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

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

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

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

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών

Εισαγωγή στην Πληροφορική

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

Πληροφορική II. Ενότητα 5 : Δομές Δεδομένων και αφηρημένοι. τύποι δεδομένων. Δρ. Γκόγκος Χρήστος

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

Αντικειμενοστραφής Προγραμματισμός

Εισαγωγή στην Πληροφορική

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Διοικητική των επιχειρήσεων

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

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

Διοικητική των επιχειρήσεων

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

Εισαγωγή στους Αλγορίθμους

Προγραμματισμός Διαδικτύου

Εισαγωγή στους Αλγορίθμους

Προγραμματισμός Διαδικτύου

Διοικητική των επιχειρήσεων

Εισαγωγή στην Επιστήμη των Υπολογιστών

Ιστορία της μετάφρασης

Αρχιτεκτονική Υπολογιστών

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Προγραμματισμός Διαδικτύου

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Μικροοικονομική. Ενότητα 12 : Μορφές Αγοράς Καραμάνης Κωνσταντίνος

Προγραμματισμός Διαδικτύου

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Ειδικά Θέματα Δικτύων ΙΙ

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Αρχιτεκτονική υπολογιστών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 6 : Δομές αρχείων. Δρ. Γκόγκος Χρήστος

Φωνολογική Ανάπτυξη και Διαταραχές

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Διδακτική της Πληροφορικής

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Μικροοικονομική. Ενότητα 11 : Κόστος παραγωγής Καραμάνης Κωνσταντίνος

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

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 10 : Κατασκευή ΝΠΑ. Αλέξανδρος Τζάλλας

Αντικειμενοστραφής Προγραμματισμός

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή»

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης Ενότητα: 8 η

Προγραμματισμός Διαδικτύου

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Εισαγωγή στην Πληροφορική

Ειδικά Θέματα Δικτύων Ι

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

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

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

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

Σχεδίαση Δικτύων Υπολογιστών

Διοικητική των επιχειρήσεων

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 1

2. Σκοποί και Λειτουργίες των ΛΣ. Λειτουργικά Συστήματα Η/Υ. Περίληψη. Ι. Προστασία Υλικού ΚΕΦΑΛΑΙΟ 2 - ΕΞΕΛΙΞΗ ΚΑΙ ΣΚΟΠΟΙ ΛΣ

Αντικειμενοστραφής Προγραμματισμός

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

Ειδικά Θέματα Δικτύων Ι

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 1: Εισαγωγή. Γαροφαλάκης Ιωάννης Πολυτεχνική Σχολή Τμήμα Μηχ/κών Η/Υ & Πληροφορικής

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 4 : Πράξεις με bits. Δρ. Γκόγκος Χρήστος

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Τεχνολογία Πολυμέσων. Ενότητα 6: Υπερκείμενο - Υπερμέσα. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Οικονομία των ΜΜΕ. Ενότητα 7: Μορφές αγοράς και συγκέντρωση των ΜΜΕ

Εκκλησιαστικό Δίκαιο

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Μικροοικονομική. Ενότητα 10 : Παραγωγικότητα συντελεστών παραγωγής Καραμάνης Κωνσταντίνος

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Δομημένος Προγραμματισμός

Λογισμός 3. Ενότητα 19: Θεώρημα Πεπλεγμένων (γενική μορφή) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Μάθηση σε νέα τεχνολογικά περιβάλλοντα

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Σχεδίαση Δικτύων Υπολογιστών

Συστήματα Αναμονής. Ενότητα 1: Εισαγωγή. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μάρκετινγκ Αγροτικών Προϊόντων

Τεχνολογία Πολυμέσων. Ενότητα 2: Διάδραση & Διαδραστικά Πολυμέσα. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Αρχιτεκτονική υπολογιστών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 10 : Ασφάλεια. Δρ. Γκόγκος Χρήστος

Εισαγωγή στην Πληροφορική

Transcript:

1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 4 : Αρχιτεκτονικές ΛΣ Δημήτριος Λιαροκάπης

2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής Τ.Ε Λειτουργικά Συστήματα Ενότητα 4 : Αρχιτεκτονικές ΛΣ Δημήτριος Λιαροκάπης Καθηγητής Εφαρμογών Άρτα, 2015

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 3 3

4 Χρηματοδότηση Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο TEI Ηπείρου» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα.

Αρχιτεκτονικές ΛΣ 1. Μονολιθικά συστήματα 2. Στρωματοποιημένη αρχιτεκτονική 3. Αρχιτεκτονική μικροπυρήνα 4. Νήματα (threads) Πολυνημάτωση (multithreading) 5. Συστήματα πολυεπεξεργασίας 6. Παράλληλα συστήματα 7. Συστήματα πραγματικού χρόνου 8. Κατανεμημένα συστήματα 5 5

1. Μονολιθικά συστήματα Είναι μια προσέγγιση χωρίς καμιά δομή Το ΛΣ είναι μια συλλογή από διαδικασίες, κάθε μια από τις οποίες μπορεί να καλέσει οποιαδήποτε άλλη, όταν τη χρειαστεί Η επικοινωνία μεταξύ των διαδικασιών γίνεται με παραμέτρους Κάθε διαδικασία είναι ορατή σε οποιαδήποτε άλλη 6 6

Κλήση συστήματος Υλοποίηση κλήσης συστήματος σε μονολιθικά συστήματα 1. Το πρόγραμμα του χρήστη δημιουργεί μια παγίδα στον πυρήνα (εκτελείται μια ειδική εντολή ή κλήση πυρήνα kernel call) 2. Το ΛΣ προσδιορίζει τον αριθμό εξυπηρέτησης που ζητήθηκε 3. Το ΛΣ εντοπίζει και καλεί τη διαδικασία εξυπηρέτησης 4. Ο έλεγχος επιστρέφεται στο πρόγραμμα του χρήστη 7 7

Μονολιθική οργάνωση Η μονολιθική οργάνωση προτείνει την εξής βασική δομή για το ΛΣ: Ένα κύριο πρόγραμμα που ζητά την ενεργοποίηση μιας διαδικασίας εξυπηρέτησης Ένα σύνολο διαδικασιών εξυπηρέτησης, οι οποίες υλοποιούν τις κλήσεις συστήματος Ένα σύνολο βοηθητικών προγραμμάτων, τα οποία υποβοηθούν τις διαδικασίες εξυπηρέτησης 8 8

2. Στρωματοποιημένη αρχιτεκτονική Προσπαθεί να βελτιώσει το σχεδιασμό των μονολιθικών πυρήνων ομαδοποιώντας συστατικά που υλοποιούν παρόμοιες λειτουργίες σε επίπεδα Κάθε επίπεδο επικοινωνεί μόνον με τα γειτονικά του (επάνω και κάτω) Οι απαιτήσεις των διεργασιών διαπερνούν αρκετά επίπεδα πριν ολοκληρωθούν Η ρυθμοαπόδοση (throughput) μπορεί να είναι μικρότερη από τα ΛΣ με τους μονολιθικούς πυρήνες Απαιτούνται επιπλέον μέθοδοι για τη μεταβίβαση και τον έλεγχο των δεδομένων 9 9

Πολλαπλά Επίπεδα 10 1

3. Αρχιτεκτονική μικροπυρήνα Ένας μονολιθικός πυρήνας Περιλαμβάνει: δρομολόγηση, σύστημα αρχείων, δικτύωση, οδηγούς συσκευής, διαχείριση μνήμης κ.α. Υλοποιείται ως μια μοναδική διεργασία και όλα τα στοιχεία διαμοιράζονται τον ίδιο χώρο διευθύνσεων. Η αρχιτεκτονική μικροπυρήνα αναθέτει λίγες λειτουργίες στον πυρήνα και τις υπόλοιπες τις αναθέτει σε εξυπηρετητές που εκτελούνται σε κατάσταση χρήστη. Η διεργασία του χρήστη (client process) στέλνει την απαίτηση στη διεργασία εξυπηρετητή (server process) η οποία επιτελεί τη διεργασία και επιστρέφει την απάντηση. Ο μικροπυρήνας διαχειρίζεται την επικοινωνία μεταξύ clients και servers. 11 1

Λογισμικό και μικροπυρήνας Το σχήμα της τοποθέτησης λογισμικού πάνω από τον πυρήνα ώστε να χειρίζεται τη επικοινωνία μεταξύ πελάτη και εξυπηρετητή δεν είναι απόλυτα ρεαλιστικό Κάποιες λειτουργίες του χρήστη είναι δύσκολο, ακόμη και ακατόρθωτο να πραγματοποιηθούν από το χώρο προγραμμάτων του χρήστη Τρόποι επίλυσης: Οι κρίσιμες διεργασίες του εξυπηρετητή τρέχουν σε κατάσταση πυρήνα με πλήρη πρόσβαση στο υλικό αλλά να συνεχίσουν να επικοινωνούν με τις άλλες διεργασίες Ένας στοιχειώδης μηχανισμός προστίθεται στον πυρήνα αλλά η πολιτική αποφάσεων να παραμείνει στους εξυπηρετητές 12 1

Αρχιτεκτονική μικροπυρήνα 13 1

Πλεονεκτήματα αρχιτεκτονικής μικροπυρήνα Επεκτασιμότητα Επιτρέπει την προσθήκη/αφαίρεση υπηρεσιών και χαρακτηριστικών Μεταφερσιμότητα Οι αλλαγές που απαιτούνται για τη μεταφορά του συστήματος σε νέο επεξεργαστή γίνονται στον μικροπυρήνα και όχι στις άλλες υπηρεσίες Αντικειμενοστραφές σχεδιασμός Τα συστατικά του ΛΣ είναι αντικείμενα με σαφώς καθορισμένες διεπαφές που μπορούν να διασυνδεθούν Αξιοπιστία Αρθρωτός (modular) σχεδιασμός Λόγω του μικρού μεγέθους, ο μικροπυρήνας μπορεί να ελεγχθεί με ακρίβεια 14 1

4. Νήματα - Πολυνημάτωση (multithreading) Ένα νήμα (thread) είναι μια απλή εκτέλεσης εντολών στον επεξεργαστή του συστήματος Κάθε εφαρμογή διαθέτει ένα ή περισσότερα νήματα Ένας επεξεργαστής μπορεί να διαχειριστεί ένα νήμα κάθε στιγμή, αλλά με καταμερισμό χρόνου παρέχεται η αίσθηση της ταυτόχρονης εκτέλεσης των νημάτων Νήμα: μια μονάδα εργασίας που διεκπεραιώνεται και μπορεί να διακόπτεται. Περιλαμβάνει: το μετρητή προγράμματος το δείκτη στοίβας τη δική της περιοχή δεδομένων 15 1

Νήματα Ένα νήμα εκτελείται σειριακά και είναι διακοπτόμενο, ώστε ο επεξεργαστής να μπορεί να επιστρέφει σε άλλο νήμα Ένα πρόγραμμα μπορεί να περιέχει αρκετά στοιχεία που διαμοιράζονται δεδομένα και μπορούν να εκτελούνται συγχρόνως. Π.χ. ένας Web browser μπορεί να περιέχει διαφορετικά συστατικά για την ανάγνωση ιστοσελίδων σε μορφή HTML την ανάκτηση των συστατικών τους (εικόνες, video κλπ) και την εμφάνιση των σελίδων στο παράθυρο του browser Αυτά τα συστατικά του προγράμματος που εκτελούνται ανεξάρτητα αλλά υλοποιούνται ως λειτουργίες 16 1

Νήματα και Διεργασίες Διεργασία: μια συλλογή νημάτων μαζί με συσχετιζόμενους πόρους του συστήματος Η διάσπαση μιας εφαρμογής σε πολλά νήματα έχει ως αποτέλεσμα το χρονισμό των γεγονότων της εφαρμογής Τα νήματα προσφέρουν έναν εναλλακτικό τρόπο λειτουργίας σε σχέση με το μοντέλο της διεργασίας Υπάρχει δυσκολία και πολυπλοκότητα όταν χρησιμοποιείται το μοντέλο διεργασίας, που επιπλέον δεν είναι αρκετά αποτελεσματικό Η πολυνημάτωση (multi-threading) είναι χρήσιμη σε εφαρμογές που εκτελούν πολλές ανεξάρτητες μεταξύ τους εργασίες που δεν χρειάζεται να είναι σε σειρά, π.χ. ένας web server 17 1

Απλές και πολυνηματικές διεργασίες Διεργασίες Είναι οντότητες που δεσμεύουν οποιονδήποτε πόρο τις αφορά όπως τον χώρο διευθύνσεων, τα δεδομένα, τον κώδικα και τα αρχεία Έχουν μεγάλο κόστος σε σχέση με τη δημιουργία, τον τερματισμό και την εναλλαγή πλαισίου Νήματα Διαμοιράζονται τον χώρο διευθύνσεων, τα δεδομένα, τον κώδικα και τα αρχεία εφόσον ανήκουν στην ίδια διεργασία Έχουν μικρό κόστος σε σχέση με τη δημιουργία, τον τερματισμό και την εναλλαγή πλαισίου 18 1

Μοντέλα νημάτων 19 1

Νήματα χρήστη και πυρήνα Νήματα χρήστη Η διαχείριση των νημάτων γίνεται από τη βιβλιοθήκη των νημάτων χρήστη Παραδείγματα (POSIX Pthreads, Win32 threads, Solaris threads) Ο πυρήνας δεν ενδιαφέρεται για το πλήθος των νημάτων χρήστη. Νήματα πυρήνα Υποστηρίζονται από τον πυρήνα Παραδείγματα (Linux, Windows XP/2000) Solaris lightweight processes 20 2

Νήματα χρήστη και πυρήνα: σύγκριση Νήματα πυρήνα: Είναι γνωστά στο ΛΣ Η εναλλαγή μεταξύ νημάτων πυρήνα στην ίδια διεργασία δεν είναι δαπανηρή Οι τιμές των καταχωρητών, του PC, και των stack pointers μεταβάλλονται Οι πληροφορίες που αφορούν τη διαχείριση μνήμης δεν αλλάζουν Ο πυρήνας χρησιμοποιεί αλγορίθμους δρομολόγησης διεργασιών για τη διαχείριση των νημάτων Νήματα χρήστη: Το ΛΣ δεν γνωρίζει για τα νήματα χρήστη, είναι ενημερωμένο μόνο για τη διεργασία όπου περιέχονται Το ΛΣ δρομολογεί τις διεργασίες και όχι τα νήματα Ο προγραμματιστής χρησιμοποιεί τη βιβλιοθήκη νημάτων για να τα διαχειριστεί (δημιουργία, διαγραφή, συγχρονισμός και δρομολόγηση) 21 2

Παραδείγματα νημάτων Posix Pthreads: Πρότυπο IEEE Έχουν καθορισμένη διεπαφή Η υλοποίησή τους εξαρτάται από όσους τα αναπτύσσουν Είναι πιο συνηθισμένα σε συστήματα UNIX (και Windows) Java threads: Υποστηρίζονται από την JVM Η υλοποίηση εξαρτάται από όσους τα αναπτύσσουν 22 2

Hyper-threading H Intel υλοποιεί την τεχνολογία hyper-threading που μοιάζει με την πολυνημάτωση, υλοποιείται σε συστήματα με έναν πυρήνα και τα κάνει να εμφανίζονται σαν να διαθέτουν πολλαπλούς επεξεργαστές Εκείνο το οποίο επιτυγχάνεται είναι η αύξηση του ρυθμού με τον οποίο το σύστημα μπορεί να εναλλάσσεται μεταξύ πολλών νημάτων. Έτσι ενισχύεται ο πολυδιεργασιακός χαρακτήρας των προσωπικών υπολογιστών 23 2

Πλεονεκτήματα νημάτων Η δημιουργία μιας νέας διεργασίας μπορεί να είναι περισσότερο δαπανηρή Απαιτεί χρόνο: χρειάζεται κλήση στον πυρήνα του ΛΣ Μπορεί να προκαλέσει επαναδρομολόγηση οπότε θα προκύψει εναλλαγή πλαισίου με αντικατάσταση ολόκληρης της διεργασίας Η επικοινωνία και ο συγχρονισμός κοστίζουν διότι απαιτείται κλήση στον πυρήνα Τα νήματα μπορούν να δημιουργηθούν χωρίς να αντικατασταθεί ολόκληρη η διεργασία Το περισσότερο έργο για τη δημιουργία του νήματος γίνεται στο χώρο διευθύνσεων του χρήστη παρά στον πυρήνα του ΛΣ Τα νήματα συγχρονίζονται με την παρακολούθηση μιας μεταβλητής, σε αντίθεση με τις διεργασίες που απαιτούν κλήση πυρήνα 24 2

5. Συστήματα πολυπεξεργασίας Πολυεπεξεργασία (multiprocessing) είναι η χρήση πολλαπλών ταυτόχρονων διεργασιών σε ένα σύστημα Τα συστήματα πολυεπεξεργασίας διακρίνονται σε: Συμπαγώς συνδεδεμένα συστήματα περιέχουν πολλαπλές CPUs που συνδέονται σε επίπεδο διαύλου. Έχουν πρόσβαση σε μια κεντρική διαμοιραζόμενη μνήμη ή μπορούν να συμμετέχουν σε μια ιεραρχία μνήμης διαθέτοντας και τοπική και διαμοιραζόμενη μνήμη Χαλαρά συνδεδεμένα συστήματα κάθε επεξεργαστής έχει τη δική του τοπική μνήμη. Οι επεξεργαστές επικοινωνούν μεταξύ τους μέσω γραμμών επικοινωνίας όπως δίαυλοι υψηλής ταχύτητας (gigabit Ethernet) ή τηλεφωνικές γραμμές 25 2

Παραδείγματα 26 2

6. Παράλληλα συστήματα Είναι συστήματα πολυεπεξεργασίας (multiprocessor systems) με περισσότερους από έναν επεξεργαστή που επικοινωνούν μεταξύ τους Ο όρος των παράλληλων συστημάτων καλύπτει μια πληθώρα αρχιτεκτονικών που περιλαμβάνουν: Συμμετρική πολυεπεξεργασία (SMP) Συστοιχίες συστημάτων SMP Μαζικά παράλληλα συστήματα (MPP) Κριτήριο διάκρισης: Είδος διασύνδεσης των επεξεργαστών Είδος διασύνδεσης μεταξύ επεξεργαστών και μνημών 27 2

Πλεονεκτήματα παράλληλων συστημάτων Υψηλές επιδόσεις Οικονομία Αυξημένη αξιοπιστία Διαθεσιμότητα Επεκτασιμότητα Κλιμάκωση 28 2

Συμμετρική πολυεπεξεργασία (SMP) Συνηθισμένη προσέγγιση για τη δημιουργία ενός παράλληλου συστήματος Δύο ή περισσότεροι επεξεργαστές εργάζονται μαζί στην ίδια μητρική Συντονίζονται και διαμοιράζονται πληροφορίες διαμέσου του διαύλου συστήματος Ρυθμίζουν μεταξύ τους το υπολογιστικό φορτίο Κάθε επεξεργαστής τρέχει ένα πανομοιότυπο αντίγραφο του ΛΣ Πολλές διεργασίες μπορούν να εκτελούνται ταυτόχρονα χωρίς να υπάρχει χειροτέρευση της απόδοσης Τα περισσότερα σύγχρονα ΛΣ υποστηρίζουν την SMP Οι βασικοί περιορισμοί των SMP σχετίζονται με το λογισμικό και την υποστήριξη εκ μέρους του ΛΣ 29 2

Αρχιτεκτονική συμμετρικής πολυεπεξεργασίας 30 3

Ασύμμετρη πολυεπεξεργασία Κάθε επεξεργαστής ανατίθεται σε μια ορισμένη διεργασία ενώ ο πρωτεύων επεξεργαστής δρομολογεί και αναθέτει τις διεργασίες στους άλλους (slave) επεξεργαστές Είναι πιο συνηθισμένη σε πολύ μεγάλα συστήματα 31 3

7. Συστήματα πραγματικού χρόνου Συχνά χρησιμοποιούνται ως μια συσκευή ελέγχου σε μια συγκεκριμένη εφαρμογή όπως ο έλεγχος επιστημονικών πειραμάτων, ο έλεγχος βιομηχανικών συστημάτων, σε συστήματα επεξεργασίας εικόνας ιατρικών εφαρμογών κλπ. Διαθέτουν καλά σχεδιασμένους περιορισμούς χρόνου. Hard real-time system Χαρακτηρίζονται από την περιορισμένη χρήση δευτερεύουσας μνήμης και τα δεδομένα αποθηκεύονται σε μνήμες βραχείας διάρκειας ή σε ROM Soft real-time system Περιορισμένη χρησιμότητα σε βιομηχανικό έλεγχο και σε ρομποτική Χρήσιμα σε εφαρμογές (multimedia, virtual reality) που απαιτούν εξειδικευμένα χαρακτηριστικά ΛΣ 32 3

8. Κατανεμημένα συστήματα Κατανέμουν τη διαδικασία υπολογισμών σε πολλούς φυσικούς επεξεργαστές υπολογιστές Μια συλλογή από οντότητες (Η/Υ), που η κάθε μια έχει τη δική της κύρια, δευτερεύουσα μνήμη και άλλα στοιχεία Ι/Ο Παρέχουν την ψευδαίσθηση ενός μοναδικού χώρου για την κύρια μνήμη Τα κατανεμημένα συστήματα αποκρύπτουν: τον τρόπο πρόσβασης σε έναν πόρο το χώρο όπου βρίσκεται κάποιος πόρος τη διαμοίραση πόρων από πολλούς χρήστες που ανταγωνίζονται για τη χρήση τους τη μετακίνηση ενός πόρου σε άλλο μέρος ενώ είναι σε χρήση τις διαφορές στην αναπαράσταση δεδομένων 33 3

Πλεονεκτήματα Χαρακτηριστικά των ΚΣ Διαμοίραση πόρων Αύξηση της ταχύτητας υπολογισμού Αξιοπιστία Δυνατότητες επικοινωνίας - Μειονεκτήματα Ασφάλεια και προστασία 34 3

3 Βιβλιογραφία Λειτουργικά Συστήματα, 8η Έκδοση, Stallings William Λειτουργικά Συστήματα 9η Εκδ., Abraham Silberschatz, Peter Baer Galvin, Greg Gagne

3 36 Σημείωμα Αναφοράς Copyright Τεχνολογικό Ίδρυμα Ηπείρου. Δημήτριος Λιαροκάπης. Λειτουργικά Συστήματα. Έκδοση: 1.0 Άρτα, 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: http://eclass.teiep.gr/courses/comp116/

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 4.0 Διεθνές [1] ή μεταγενέστερη. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, Διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. [1] http://creativecommons.org/licenses/by-nc-nd/4.0/deed.el 3

3 Τέλος Ενότητας Επεξεργασία: Ευάγγελος Καρβούνης Άρτα, 2015

3 Τέλος Ενότητας Αρχιτεκτονικές ΛΣ