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

Σχετικά έγγραφα
Εισαγωγή στην Πληροφορική

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

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

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

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

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

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

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

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

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

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

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

Λιβανός Γιώργος Εξάμηνο 2017Β

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

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

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

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

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

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

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

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Βασικές συσκευές Ε/Ε. Είσοδος Έξοδος στον υπολογιστή. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (IΙI) Μ.

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-ΙI. Ενότητα 5 : Αρχιτεκτονική ΙΑ-32

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

Λειτουργικά συστήµατα. Λογισμικό Συστήματος 1

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα

Αρχιτεκτονική-ΙI Ενότητα 4 :

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

Οργάνωση Υπολογιστών (IΙI)

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

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

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

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

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

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

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

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

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

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

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

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

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

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4

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

Εικονική Μνήμη (Virtual Memory)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Οργάνωση επεξεργαστή (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

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

Μάθημα 6 ο. Χρονοδρομολόγηση (Scheduling)

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

Βασικές Έννοιες της Πληροφορικής

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

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

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

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

Κεφάλαιο 3: Λειτουργικά Συστήµατα

3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση χώρου διευθύνσεων

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

Κεφάλαιο 5. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ -. Σερπάνος 2. Σημείωση

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

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

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

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

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

Το υλικό του υπολογιστή

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Εισαγωγή στα Λειτουργικά

Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών

Ενσωματωμένα Συστήματα

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

Κεντρική Μονάδα Επεξεργασίας

Πανεπιστήµιο Θεσσαλίας

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

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

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

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

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

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

ΠΕΡΙΕΧΟΜΕΝΑ Υλικό και Λογισμικό Αρχιτεκτονική Υπολογιστών Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

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

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

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

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

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

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

Σκελετός Παρουσίασης

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Βιομηχανικοί Ελεγκτές. Ενότητα: ΕΡΓΑΣΤΗΡΙΟ 1 ΕΛΕΓΧΟΣ ΣΥΣΤΗΜΑΤΟΣ ΜΕΤΑΦΟΡΑΣ

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

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

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

Οργάνωση Υπολογιστών (ΙI)

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

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

Transcript:

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 1: Αθηνά Βακάλη

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

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

Λειτουργικό Σύστημα Πρόγραμμα που ενεργεί ως ενδιάμεσος μεταξύ του χρήστη και του Ηλεκτρονικού Υπολογιστή. Στόχοι Λειτουργικού Συστήματος Εκτέλεση προγραμμάτων χρηστών και διευκόλυνση επίλυσης προβλημάτων. Υλοποίηση προσιτού συστήματος Ηλεκτρονικού Υπολογιστή. Ευφυής χρήση του υλικού μέρους του Ηλεκτρονικού Υπολογιστή. 4

Συστατικά Μέρη Υπολογιστικού Συστήματος (1/2) ΥΛΙΚΟ (Hardware) Παρέχει τους βασικούς υπολογιστικούς πόρους (Κεντρική μονάδα επεξεργασίας, Μνήμη, Ι/Ο συσκευές). Λειτουργικό Σύστημα (Operating System) Ελέγχει και συντονίζει τη χρήση του υλικού μεταξύ διαφόρων προγραμμάτων εφαρμογών και χρηστών. Ενεργεί παρόμοια με έναν manager. Προγράμματα Εφαρμογών (Application Programs) Καθορίζουν τον τρόπο με τον οποίο χρησιμοποιούνται οι πόροι του συστήματος για την επίλυση υπολογιστικών προβλημάτων. Χρήστες (Users) Άνθρωποι, μηχανές, άλλοι ηλεκτρονικοί υπολογιστές. 5

Συστατικά Μέρη Υπολογιστικού Συστήματος (2/2) Συστατικά μέρη υπολογιστικού συστήματος 6

Ορισμοί Λειτουργικού Συστήματος Κατανεμητής Πόρων (Resource Allocator) Διαχειρίζεται και κατανέμει τους πόρους του συστήματος. Πρόγραμμα Ελέγχου (Control Program) Ελέγχει την εκτέλεση των προγραμμάτων χρηστών, καθώς και τη λειτουργία των συσκευών εισόδου-εξόδου. Πυρήνας (Kernel) Το μοναδικό πρόγραμμα που εκτελείται ( τρέχει ) κάθε στιγμή. 7

Εξέλιξη Λειτουργικών Συστημάτων Αρχικά Συστήματα Απλά Συστήματα Μαζικής Επεξεργασίας Πολύ-προγραμματιστικά Συστήματα Μαζικής Επεξεργασίας Συστήματα Διαμοιραζόμονου Χρόνου Συστήματα Προσωπικών Υπολογιστών Παράλληλα Συστήματα Κατανεμημένα Συστήματα Συστήματα Πραγματικού Χρόνου 8

Αρχικά Συστήματα (1950) (1/2) Δομή Ογκώδη μηχανήματα Συστήματα ενός χρήστη Χειριστής Προγραμματιστής Χρήστης Διάτρητες κάρτες Μαγνητικές ταινίες Λογισμικό Assemblers Linkers Compilers Loaders Βιβλιοθήκες Οδηγοί Συσκευών Αρχικά υπολογιστικά συστήματα [4] 9

Αρχικά Συστήματα (1950) (2/2) Μη Ευφυής Χρήση Πόρων Φόρτωση compiler Εκτέλεση compiler Από-φόρτωση compiler tape Φόρτωση assembler Απο-φόρτωση assembler tape Φόρτωση object προγράμματος Εκτέλεση object προγράμματος Ασφάλεια 10

Απλά Συστήματα Μαζικής Επεξεργασίας Φορτωτής Ακολουθία Εργασιών Μεταφραστής καρτών ελέγχου Περιοχή προγραμμάτων χρηστών ΕΛΕΓΚΤΗΣ (Monitor) Ομαδοποίηση σχετικών εργασιών. Αυτοματοποίηση ακολουθίας εργασιών. Ύπαρξη μόνιμου ελεγκτή (Resident Monitor). Spooling: Παράλληλη ενέργεια υπολογισμών μίας εργασίας κατά τη διάρκεια του χρόνου εισόδου-εξόδου μίας άλλης εργασίας. Δεξαμενή εργασιών (Job Pool): Δομή δεδομένων που επιτρέπει στο Λειτουργικό Σύστημα να επιλέξει την επόμενη εκτελέσιμη εργασία. 11

Πολύ-Προγραμματιστικά Συστήματα Μαζικής Επεξεργασίας Χαρακτηριστικά Προγράμματα συστήματος για Είσοδο/Έξοδο. Διαχείριση μνήμης. Χρονοπρογραμματισμός CPU. Ανάθεση συσκευών. Ελεγκτής Εργασία 1 Εργασία 2 Εργασία 3 Εργασία 4 0 512K Διάφορες εργασίες παραμένουν στην κύρια μνήμη ταυτόχρονα. Η CPU πολλαπλασιάζεται μεταξύ των εργασιών. 12

Συστήματα Διαμοιραζόμενου Χρόνου Μοίρασμα Κεντρικής Μονάδας Επεξεργασίας (Central Processing Unit - CPU) μεταξύ διαφόρων εργασιών που υπάρχουν στη μνήμη και στο δίσκο. Μία εργασία εναλάσσεται μεταξύ δίσκου και μνήμης. Άμεση (online) επικοινωνία μεταξύ του χρήστη και του συστήματος. Μετά το τέλος μίας εντολής το Λειτουργικό Σύστημα αναζητά την επόμενη εντολή ελέγχου που πληκτρολογείται από το χρήστη. Άμεσο (online) σύστημα αρχείων. Παρέχεται στους χρήστες για πρόσβαση στα δεδομένα και στον κώδικα. 13

Συστήματα Προσωπικών Υπολογιστών Προσωπικοί Υπολογιστές Συστήματα που έχουν κατασκευαστεί για ένα χρήστη. Συσκευές εισόδου-εξόδου Πληκτρολόγια, ποντίκια, οθόνες παρουσίασης, μικροί εκτυπωτές. Διευκόλυνση χρήστη και αμεσότητα. Μπορούν να υιοθετήσουν τεχνολογία που αφορά σε μεγαλύτερα λειτουργικά συστήματα. Αρχικοί προσωπικοί υπολογιστές [5] Μη-απαιτητική χρήση της CPU. 14

Παράλληλα Συστήματα Συστήματα πολλαπλών επεξεργαστών με περισσότερες από μία συνεργαζόμενες CPU. Στενή σύνδεση συστημάτων Οι επεξεργαστές δια-μοιράζονται μνήμη και χρονισμό. Η επικοινωνία πραγματοποιείται κυρίως μέσω δια-μοιραζόμενης μνήμης. Πλεονεκτήματα Αύξηση ρυθμού απόδοσης (Throughput), Οικονομία, Αύξηση αξιοπιστίας. Συμμετρική Πολυ-επεξεργασία Κάθε επεξεργαστής εκτελεί ένα ακριβές αντίγραφο του Λειτουργικού Συστήματος Πολλές διεργασίες εκτελούνται ταυτόχρονα Ασύμμετρη Πολυ-επεξεργασία Κάθε επεξεργαστής αντιστοιχεί σε συγκεκριμένο έργο. Συχνότερο στα μεγάλα συστήματα 15

Κατανεμημένα Συστήματα Κατανομή των υπολογισμών μεταξύ των διαφόρων επεξεργαστών. Χαλαρή σύνδεση συστημάτων: Κάθε επεξεργαστής διαθέτει τη δική του τοπική μνήμη. Οι επεξεργαστές επικοινωνούν μεταξύ τους μέσω διαφόρων γραμμών επικοινωνίας (π.χ. Αρτηρίες υψηλής ταχύτητας, τηλεφωνικές γραμμές). Πλεονεκτήματα Δια-μοίραση πόρων Αύξηση ταχύτητας υπολογισμών Αύξηση αξιοπιστίας Επικοινωνία (μεταφορές αρχείων, ηλεκτρονικό ταχυδρομείο) 16

Συστήματα Πραγματικού Χρόνου Συνήθως χρησιμοποιούνται ως μηχανισμοί ελέγχου σε ειδικές εφαρμογές (επιστημονικά πειράματα, ιατρικά συστήματα εικόνας, βιομηχανικά συστήματα ελέγχου κλπ). Καλώς-ορισμένοι περιορισμοί σταθερού χρόνου. Αυστηρό Σύστημα Πραγματικού Χρόνου: Περιορισμένη δευτερεύουσα μνήμη. Αποθήκευση δεδομένων σε μνήμη μικρής διάρκειας ή CDROM. Αντιθέσεις με συστήματα δια-μοιραζόμενου χρόνου. Χαλαρό Σύστημα Πραγματικού Χρόνου: Περιορισμένη χρήση σε βιομηχανικούς ελέγχους και στη ρομποτική. Χρήσιμο για τις εφαρμογές (πολυμέσα, εικονική πραγματικότητα) με απαιτήσεις προχωρημένων χαρακτηριστικών των Λειτουργικών Συστημάτων. 17

Λειτουργία Υπολογιστικού Συστήματος Οι συσκευές Εισόδου/Εξόδου και η CPU μπορούν να εκτελούνται ταυτόχρονα. Κάθε ελεγκτής συσκευής είναι υπεύθυνος για το συγκεκριμένο τύπο συσκευών. Κάθε ελεγκτής συσκευής έχει τοπική ενδιάμεση μνήμη (buffer). Η CPU μετακινεί τα δεδομένα από/προς κύρια μνήμη μέσω buffer. Η Είσοδος/Έξοδος αφορά στον τοπικό buffer του ελεγκτή. Ο ελεγκτής συσκευής ενημερώνει τη CPU μόλις τελειώσει μία εργασία με την πρόκληση κάποιας διακοπής (interrupt). 18

Δομή Εισόδου-Εξόδου (1/2) Σύγχρονη Είσοδος/Έξοδος Ο έλεγχος επιστρέφει στο πρόγραμμα του χρήστη μόνο μετά τη λήξη της διαδικασίας εισόδου/εξόδου. Εντολή αναμονής κάνει ανενεργή τη CPU έως την επόμενη διακοπή. Δεν υπάρχει ταυτόχρονη επεξεργασία ενεργειών εισόδου/εξόδου. Ασύγχρονη Είσοδος/Έξοδος Ο έλεγχος επιστρέφει στο πρόγραμμα του χρήστη αμέσως μόλις ξεκινήσει η διαδικασία εισόδου/εξόδου. Κλήση συστήματος απαιτεί από το Λειτουργικό Σύστημα να επιτρέψει στο χρήστη να περιμένει έως την ολοκλήρωση της διαδικασίας εισόδου/εξόδου. 19

Δομή Εισόδου-Εξόδου (2/2) Πίνακας Κατάστασης Συσκευών Περιέχει στοιχεία για κάθε συσκευή εισόδου/εξόδου (τύπο, διεύθυνση, κατάσταση). Δείκτες Λειτουργικού Συστήματος Για τον πίνακα κατάστασης συσκευών έτσι ώστε να καθορίζει την κατάσταση της συσκευής και να ενημερώνει τον πίνακα για να συμπεριληφθεί η διακοπή. 20

Συστατικά Μέρη Η Άνω Επιπέδου Άποψη ΜΠ: Μετρητής Προγράμματος ΚΕ: Καταχωρητής Εντολών ΚΕΜ: Καταχωρητής Ενδιάμεσης Μνήμης ΚΔΜ: Καταχωρητής Διεύθυνσης Μνήμης Ε/ΕΚΔ: Καταχωρητής Ενδιάμεσης Μνήμης Ε/ΕΚΕΧ: Καταχωρητής Ενδιάμεσου χώρου PC: Program Counter IR: Instruction Register MAR: Memory Address Register MBR: Memory Buffer Register I/O AR: Input/Output Address Register Συστατικά Μέρη: Η Άνω Επιπέδου Άποψη I/O BR: Input/Output Buffer Register 21

Καταχωρητές Επεξεργαστή Καταχωρητές ορατοί από τους χρήστες Επιτρέπει στον προγραμματιστή να ελαχιστοποιήσει τις αναφορές στην κύρια μνήμη με βελτιστοποίηση της χρήσης των καταχωρητών. Καταχωρητές Ελέγχου και Κατάστασης Χρησιμοποιούνται από τον επεξεργαστή για τον έλεγχο της λειτουργίας του επεξεργαστή. Χρησιμοποιούνται από τις ρουτίνες του Λειτουργικού Συστήματος για τον έλεγχο της εκτέλεσης των προγραμμάτων. 22

Καταχωρητές προσβάσιμοι από τους Χρήστες Μπορούν να χρησιμοποιηθούν με χρήση γλώσσας μηχανής του επεξεργαστή. Διαθέσιμοι σε όλα τα προγράμματα: Προγράμματα εφαρμογών και προγράμματα συστήματος. Τύποι καταχωρητών Δεδομένων Διευθύνσεων Δεικτιοδότησης (index) Δείκτης τμήματος μνήμης Δείκτης στοίβας 23

Καταχωρητές ορατοί από τους Καταχωρητές Διεύθυνσης Δεικτοδότησης Περιλαμβάνει την πρόσθεση ενός δείκτη σε μία τιμή βάσης για να προκύψει μία ενεργή διεύθυνση. Δείκτης τμήματος μνήμης Όταν η μνήμη υποδιαιρείται σε τμήματα (μπλοκ μνήμης) η αναφορά στη μνήμη περιλαμβάνει την αναφορά. Δείκτης στοίβας χρήστες Δείχνει στην κορυφή της στοίβας, όταν υπάρχι δομή στοίβας (προσβάσιμη από το χρήστη) για την υποστήριξη της διευθυνσιοδότησης. 24

Καταχωρητές Ελέγχου και Κατάστασης (1/2) Μετρητής Προγράμματος (Program Counter-PC) Περιέχει τη διεύθυνση της εντολής που πρόκειται να ανακτηθεί. Καταχωρητής Εντολών (Instruction Register-IR) Περιέχει την εντολή που ανακτήθηκε πιο πρόσφατα. Λέξη Κατάστασης Προγράμματος (Program Status Word-PSW): Σύνολο καταχωρητών με πληροφορίες κατάστασης και συνήθως περιέχει: Κώδικες συνθήκης ή σημαίες (condition codes). Ενεργοποίηση/Απενεργοποίηση Διακοπής (bit). Κατάσταση Επόπτη/Χρήστη (bit). 25

Κώδικες συνθήκης ή σημαίες Σύνολο δυαδικών ψηφίων ρυθμιζόμενων από τον επεξεργαστή ως αποτέλεσμα κάποιων λειτουργιών. Μπορούν να αναγνωσθούν από κάποιο πρόγραμμα, αλλά όχι να τροποποιηθούν. Παράδειγμα-αποτέλεσμα από κάποια αριθμητική εντολή: Θετικό αποτέλεσμα. Αρνητικό αποτέλεσμα. Μηδέν. Καταχωρητές Ελέγχου και Υπερχείλιση. Κατάστασης (2/2) 26

Βασικός Κύκλος Εντολής Ο επεξεργαστής παραλαμβάνει μία-μία τις εντολές και τις εκτελεί. Βασικός κύκλος εντολής 27

Παραλαβή και Εκτέλεση Εντολής Ο επεξεργαστής παραλαμβάνει την εντολή από τη μνήμη. Ο μετρητής προγράμματος (PC) κρατά τη διεύθυνση της επόμενης προς παραλαβή διεύθυνσης. Ο μετρητής προγράμματος αυξάνει κατά 1 μετά την κάθε πραλαβή εντολής. 28

Καταχωρητής Εντολών Η εντολή που παραλείφθηκε τοποθετείται στον Καταχωρητή Εντολών (ΚΕ). Κατηγορίες εντολών: Επεξεργαστής-Μνήμη Μεταφέρει δεδομένα μεταξύ επεξεργαστή και μνήμης. Επεξεργαστής-Είσοδος/Έξοδος Δεδομένα μεταφέρονται προς ή από μία περιφερειακή συσκευή. Επεξεργασία δεδομένων Αριθμητική ή λογική λειτουργία σε δεδομένα. Έλεγχος Αλλάζει την ακολουθία εκτέλεσης. 29

Παράδειγμα Εκτέλεσης Προγράμματος Παράδειγμα εκτέλεσης προγράμματος 30

Άμεση Πρόσβαση Εισόδου/Εξόδου στη μνήμη Ανταλλαγές δεδομένων Εισόδου/Εξόδου κατευθείαν από τη μνήμη. Ο επεξεργαστής παραχωρεί σε ένα συστατικό μέρος Εισόδου/Εξόδου (I/O Component) την αρμοδιότητα να διαβάζει ή να γράφει από και προς τη μνήμη. Απελευθερώνει τον επεξεργαστή από την ευθύνη για την ανταλλαγή. Πλεονέκτημα: Ο επεξεργαστής είναι ελεύθερος να εκτελέσει άλλες λειτουργίες. 31

Διακοπή (Interrupt) Διακοπή Μία παύση/διακοπή της κανονικής λειτουργίας του επεξεργαστή. Μία αναστολή κάποιας επεξεργασίας που προκλήθηκε από ένα γεγονός (εξωτερικό προς αυτή την επεξεργασία) και πραγματοποιείται με τέτοιο τρόπο που η επεξεργασία μπορεί να συνεχιστεί. Πλεονεκτήματα Βελτιώνει την αποτελεσματικότητα της λειτουργίας. Επιτρέπει στον επεξεργαστή να εκτελέσει άλλες ενοτλές ενώ μία λειτουργία Εισόδου/Εξόδου είναι σε εξέλιξη. 32

Κλάσεις διακοπών Πρόγραμμα Αριθμητική υπερχείλιση. Διαίρεση με το μηδέν. Εκτέλεση απαγορευμένης εντολής μηχανής. Αναφορά σε θέση μνήμης εκτός ορίων. Χρονομετρητής Είσοδος/Έξοδος Σφάλμα υλικού μέρους 33

Διαχειριστή Διακοπών Interrupt Handler Λογισμικό/πρόγραμμα που καθορίζει τη φύση/τύπο της διακοπής και εκτελεί τις ανάλογες ενέργειες που απαιτούνται γι αυτόν τον τύπο διακοπής. Ο έλεγχος μεταφέρεται σε αυτό το πρόγραμμα μόλις προκύψει μία διακοπή. Στη γενική περίπτωση, αποτελεί κομμάτι του λειτουργικού συστήματος. 34

Κύκλος εντολής με διακοπές (1/2) Κύκλος εντολής με διακοπές 35

Κύκλος εντολής με διακοπές (2/2) Ο επεξεργαστής ελέγχει για διακοπές. Εάν δεν εκκρεμεί καμία διακοπή, παραλαμβάνει την επόμενη εντολή του τρέχοντος προγράμματος. Εάν εκκρεμεί μία διακοπή, σταματά προσωρινά την εκτέλεση του τρέχοντος προγράμματος και εκτελεί τη ρουτίνα διαχείρισης διακοπών. 36

Ροή Ελέγχου Προγράμματος Ροή ελέγχου προγράμματος 37

Πολλαπλές Διακοπές Παράδειγμα Ένα πρόγραμμα παραλαμβάνει δεδομένα από μία γραμμή επικοινωνίας και ταυτόχρονα πρέπει να εκτυπώσει κάποια αποτελέσματα. 2 Προσεγγίσεις Απενεργοποιεί άλλες διακοπές, ενώ μία διακοπή είναι υπό επεξεργασία. Ο επεξεργαστής αγνοεί κάθε νέο σήμα αίτησης διακοπής. Ακολουθιακή επεξεργασία διακοπής [1] Ενφωλιασμένη επεξεργασία διακοπής [1] 38

Πολλαπλές Διακοπές με ακολουθιακή σειρά Απενεργοποιεί διακοπές έτσι ώστε ο επεξεργαστής να μπορεί να ολοκληρώσει μία επεξεργασία. Οι διακοπές παραμένουν εκκρεμείς μέχρι ο επεξεργαστής να επιτρέψει ξανά τις διακοπές. Μετά την ολοκλήρωση της ρουτίνας διαχείρισης διακοπών, ο επεξεργαστής ελέγχει για επιπλέον διακοπές. 39

Προτεραιότητες Πολλαπλών Διακοπών Διακοπές υψηλής προτεραιότητας οδηγούν τις διακοπές χαμηλής προτεραιότητας σε αναμονή. Προκαλούν τη διακοπή μιας διακοπής χαμηλής προτεραιότητας. Παράδειγμα Όταν υπάρχει είσοδος από μία γραμμή επικοινωνίας πρέπει να απορροφηθεί γρήγορα για να αφήσει χώρο για νέα στοιχεία εισόδου. 40

Ιεραρχία Μνήμης (1/2) Ιεραρχία μνήμης 41

Ιεραρχία Μνήμης (2/2) Ιεραρχία μνήμης [2] 42

Κατεβαίνοντας την ιεραρχία Μειώνεται το κόστος ανά bit. Αυξάνεται η χωρητικότητα. Αυξάνεται ο χρόνος πρόσβασης. Μειώνεται η συχνότητα πρόσβασης της μνήμης από τον επεξεργαστή. Τοπικότητα της αναφοράς (locality of reference) Αναφορές του επεξεργαστή στις θέσεις μνήμης τείνουν να ομαδοποιηθούν. 43

Δίσκος Κρυφής Μνήμης Ένα μέρος της κύριας μνήμης μπορεί να χρησιμοποιηθεί ως ενδιάμεσος αποθηκευτικός χώρος (buffer) για να κρατηθούν προσωρινά δεδομένα του δίσκου. Οι εγγραφές του δίσκου ομαδοποιούνται. Δεδομένα που έχουν εγγραφεί εκεί μπορεί να αναφερθούν ξανά. Τα δεδομένα αυτά ανακτώνται γρήγορα από την κρυφή μνήμη και όχι με αργό ρυθμό από δίσκους. 44

Κρυφή Μνήμη (Cache Memory) (1/3) Αόρατη στο λειτουργικό σύστημα. Αυξάνει την ταχύτητα της μνήμης. Η ταχύτητα του επεξεργαστή είναι ταχύτερη από την ταχύτητα της μνήμης. 45

Κρυφή Μνήμη (Cache Memory) (2/3) Περιέχει ένα αντίγραφο ενός τμήματος της κύριας μνήμης. Ο επεξεργαστής πρώτα ελέγχει την κρυφή μνήμη. Εάν δεν το βρει στην κρυφή μνήμη, ένα κομμάτι ( μπλοκ ) της κύριας μνήμης που περιέχει τη ζητούμενη πληροφορία μεταφέρεται στην κρυφή μνήμη. 46

Κρυφή Μνήμη (Cache Memory) (3/3) Κρυφή μνήμη 47

Σχεδίαση Κρυφής Μνήμης (1/3) Μέγεθος Κρυφής Μνήμης Μικρές κρυφές μνήμες μπορούν να έχουν σημαντική επιρροή στην επίδοση. Μέγεθος Μπλοκ Η μονάδα δεδομένων ανταλλαγής μεταξύ κρυφής μνήμης και κύριας μνήμης. Επιτυχία (hit) σημαίνει ότι η πληροφορία βρέθηκε στην κρυφή μνήμη. Μεγαλύτερο μέγεθος μπλοκ: περισσότερες επιτυχίες μέχρις ότου η πιθανότητα χρήσης πρόσφατων παραληφθέντων δεδομένων γίνει μικρότερη από την πιθανότητα επαναχρησιμοποίησης δεδομένων που μετακινήθηκαν εκτός κρυφής μνήμης. 48

Σχεδίαση Κρυφής Μνήμης (2/3) Συνάρτηση χαρτογράφησης μνήμης (Map function) Καθορίζει ποια θέση στην κρυφή μνήμη θα καταλάβει ένα μπλοκ. Αλγόριθμος Αντικατάστασης (Replacement algorithm) Καθορίζει ποιο μπλοκ θα αντικατασταθεί. Αλγόριθμος Λιγότερα πρόσφατα χρησιμοποιούμενος (Least- Recently-Used, LRU). 49

Σχεδίαση Κρυφής Μνήμης (3/3) Πολιτική Εγγραφής Όταν εκτελείται εγγραφή στη μνήμη. Εγγραφή μπορεί να υπάρξει κάθε φορά που ένα μπλοκ ενημερώνεται. Εγγραφή μπορεί να υπάρξει όταν ένα μπλοκ αντικαθίσταται. Πλεονέκτημα Ελαχιστοποιεί τις λειτουργίες της μνήμης. Μειονέκτημα Αφήνει τη μνήμη σε μία μη ενημερωμένη απαρχαιωμένη κατάσταση. 50

Προγραμματισμένη Είσοδος/Έξοδος Το στοιχείο Εισόδου/Εξόδου εκτελεί την ενέργεια και όχι ο επεξεργαστής. Ρυθμίζει τα κατάλληλα bits στην κατάσταση του καταχωρητή Εισόδου/Εξόδου. Δεν προκαλείτε διακοπή. Ο επεξεργαστής ελέγχει την κατάσταση του στοιχείου Εισόδου/Εξόδου μέχρι να ολοκληρωθεί η λειτουργία Εισόδου/Εξόδου. Προγραμματισμένη είσοδος/έξοδος (Ε/Ε) 51

Είσοδος/Έξοδος Καθοδηγούμενη από Διακοπές Interrupt-driven Input/Output Ο επεξεργαστής διακόπτεται όταν ένα στοιχείο Εισόδου/Εξόδου είναι έτοιμο να ανταλλάξει δεδομένα. Ο επεξεργαστής είναι ελεύθερος να κάνεις άλλες εργασίες. Αποφεύγονται οι άσκοπες αναμονές. Καταναλώνει αρκετό χρόνο από τον επεξεργαστή επειδή περιμένει κάθε λέξη προς ανάγνωση ή εγγραφή να περάσει από τον επεξεργαστή. Ε/Ε καθοδηγούμενη από διακοπές 52

Αναφορές [1]. Stallings William, Operating systems: Internal and Design Principles, Fourth edition, Publishing as Prentice Hall, 2000. [2]. W. Stallings, Λειτουργικά Συστήματα Αρχές Σχεδίασης, 6η έκδοση, Εκδόσεις ΤΖΙΟΛΑ, 2009, Θεσσαλονίκη. [3] A.S.Tanenbaum, "Σύγχρονα Λειτουργικά Συστήματα" Τόμος Α', Εκδόσεις, Παπασωτηρίου. [4]. Ιστορία των προσωπικών υπολογιστών. [5]. Αρχικοί προσωπικοί υπολογιστές. Τίτλος Μαθήματος Τμήμα 53

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Τέλος Ενότητας