Διαχείριση E/E (I/O management)

Σχετικά έγγραφα
Οργάνωση Υπολογιστών (IΙI)

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

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

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

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

Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT)

Μάθημα 7: Αλγόριθμοι Χρονοδρομολόγησης

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

Κεφάλαιο 3 Λειτουργικά Συστήματα Β ΕΠΑΛ

Κεφάλαιο 5. Κεφ. 5 Λειτουργικά Συστήματα 1

Μάθημα 7 ο. Αλγόριθμοι Χρονοδρομολόγησης

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

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access)

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

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

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

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

Μάθημα 8: Διαχείριση Μνήμης

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

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

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

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

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

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

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

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

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

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

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

Εργαστήριο Λειτουργικών Συστημάτων - Αλγόριθμοι Χρονοπρογραμματισμού. Εργαστηριακή Άσκηση

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

ΑΔΙΕΞΟΔΑ (Deadlocks) Παράδειγμα 1 Θανάσιμο αγκάλιασμα (deadly embrace)

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟ ΛΟΓΙΣΜΙΚΟ EXTEND. 1 ο εργαστήριο Διοίκησης και Παραγωγής Έργων

Οργάνωση ενός σύγχρονου Υπολογιστικού Συστήματος ή Ηλεκτρονικού Υπολογιστή (Η/Υ) Τα σύγχρονα συστήματα Η/Υ έχουν την παρακάτω οργάνωση:

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

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

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

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

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

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

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

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 4: Λογισμικό Συστήματος

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

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

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

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

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

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

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

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

ΠΑΡΑΤΗΡΗΣΕΙΣ. ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΠΡΟΓΡΑΜΜΑ ΠΑΙΔΑΓΩΓΙΚΗΣ ΚΑΤΑΡΤΙΣΗΣ 1 η ΕΡΓΑΣΙΑ ΠΡΑΚΤΙΚΗΣ ΑΣΚΗΣΗΣ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

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

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

8 FORTRAN 77/90/95/2003

ΤΕΙ Κρήτης, Παράρτηµα Χανίων

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

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

Κατανεμημένα Συστήματα

Εργαστήριο Διοίκησης Παραγωγής & Έργων. Εισαγωγή στην προσομοίωση διεργασιών χρησιμοποιώντας το λογισμικό Extend

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

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

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

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

Δομή Ηλεκτρονικού υπολογιστή

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

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα. λ από τον ρυθμό μετάδοσής της. Υποθέτοντας ότι ο κόμβος A

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

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

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

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα

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

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

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

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

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

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

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

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

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Τι είναι το HARDWARE στην σημερινή εποχή; Σελίδα 3 Το καθένα από αυτά σε τι χρησιμεύει; Σελίδα 4

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

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

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

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

DIRECT MEMORY ACCESS - DMA

Λειτουργικά Συστήματα Ι. Συστήματα Εισόδου/Εξόδου (I/O --- Input/Output)

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

Περιεχόμενα. Κατηγορίες συσκευών Ε/Ε

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

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

Κεφάλαιο 5: Τοπικά ίκτυα

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

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

Transcript:

Συσκευές ε/ε Διαχείριση E/E (I/O management) Πολύ διαφορετικά χαρακτηριστικά και τρόπος λειτουργίας Ταχύτητες Μεγέθη μεταφερόμενων ομάδων δεδομένων (blocks) (Εξωτερική) παράσταση των δεδομένων Επιτρεπόμενες λειτουργίες Ειδικές συνθήκες/σφάλματα επικοινωνίας 1

Σκοπός-Στόχοι Διαχείριση E/E Καθοδήγηση και συντονισμός της λειτουργίας των διαφορετικών συσκευών ε/ε: 1. Ανεξαρτησία από (εξωτερική) παράσταση δεδομένων Μηχανισμοί μετάφρασης από τον εξωτερικό στον (μοναδικό) εσωτερικό κώδικα του υπολογιστή 2. Ανεξαρτησία από χαρακτηριστικά και τρόπο λειτουργίας των συσκευών 3. Ομοιόμορφη μεταχείριση των συσκευών 4. Βελτιστοποίηση βαθμού χρήσης των συσκευών 2

Σκοπός-Στόχοι Διαχείριση E/E 2. Ανεξαρτησία από χαρακτηριστικά και τρόπο λειτουργίας των συσκευών τα χαρακτηριστικά και οι λεπτομέρειες λειτουργίας των συσκευών ε/ε κρύβονται στους αντίστοιχους διαχειριστές τους διαχειριστές ε/ε (device managers/drivers/handlers) αρκετά σύνθετοι αντιμετωπίζουν λεπτομέρειες που εξαρτώνται από το υλισμικό του υπολογιστή και κυρίως από τις περιφερειακές συσκευές και τα προσαρμοστικά τους κυκλώματα παράδειγμα εντολή μεταφοράς δεδομένων σ ένα δίσκο στον PDP-11 δώδεκα πιθανά λάθη! καταχωρητής σφαλμάτων μήκους 12 bits! 12 διαδικασίες αντιμετώπισης σφαλμάτων! 3

Σκοπός-Στόχοι Διαχείριση E/E Διαχείριση εισόδου/εξόδου αποτελεί συνήθως το μεγαλύτερο μέρος ενός ΛΣ Κυρίως λεπτομέρειες διαχειριστών ε/ε εξαρτώμενες από τα χαρακτηριστικά του υλισμικού που αλλάζουν πολύ γρήγορα με την εξέλιξη της τεχνολογίας Γενική δομή και λειτουργία διαχειριστών ε/ε ανεξάρτητη από τα χαρακτηριστικά των συσκευών παρόμοια υποπρογράμματα των διαχειριστών λεπτομέρειες αποθηκευμένες στους περιγραφητές συσκευών παρόμοια επεξεργασία των περιγραφητών 4

Σκοπός-Στόχοι 3. Ομοιόμορφη μεταχείριση των συσκευών Διαχείριση E/E αναφορά σε λογικά ή εικονικά ρεύματα/αρχεία διεπαφή συστήματος ε/ε: ίδια για όλες τις συσκευές ΛΣ: αντιστοίχιση προκαθορισμένων ρευμάτων ή αρχείων με ορισμένες συσκευές εισόδου/εξόδου καθυστερημένη δέσμευση: σύνδεση λογικών ρευμάτων/αρχείων με τις συσκευές ε/ε όσο το δυνατόν αργότερα UNIΧ: όταν το πρόγραμμα πρόκειται να εκτελεστεί Αρχείο text (output ή SYSOUT) εκτυπωτής ή οθόνη Αρχείο text (input ή SYSIN) πληκτρολόγιο Οι χρήστες δε (χρειάζεται να) γνωρίζουν την αντιστοιχία read (stdin,...), write (stdout,...) System.in.read (...), System.out.print (...) 5

Σκοπός-Στόχοι Τρία είδη συσκευών (διαχειριστών) ε/ε Διαχείριση E/E αφιερωμένες συσκευές (dedicated devices) (κατα)μεριζόμενες συσκευές (shared devices) λογικές/εικονικές συσκευές (logical/virtual devices) Αφιερωμένες συσκευές καταχωρούνται σε ΜΙΑ ΜΟΝΟ διεργασία για ένα ορισμένο διάστημα oι διεργασίες πρέπει: να τις δεσμεύουν προκαταβολικά να τις χρησιμοποιούν αποκλειστικά όσο τις χρειάζονται π.χ. μαγνητικές ταινίες, εκτυπωτές, οπτικοί αναγνώστες 6

Σκοπός-Στόχοι (Κατα)μεριζόμενες συσκευές Διαχείριση E/E Χρησιμοποιούνται από μία μόνο διεργασία για ένα διάστημα Εξυπηρετούν τη διεργασία με πολύ γρήγορο ρυθμό Μπορούν στη συνέχεια να χρησιμοποιηθούν από άλλες διεργασίες Φαίνεται ότι (κατα)μερίζονται στις διεργασίες Οι διεργασίες δεν πρέπει: να τις δεσμεύσουν προκαταβολικά να τις κρατούν δεσμευμένες συνέχεια π.χ. μαγνητικοί δίσκοι 7

Προβλήματα χρήσης αφιερωμένων συσκευών (π.χ. εκτυπωτές) (1) Οι διεργασίες που θέλουν να τις χρησιμοποιήσουν πρέπει να περιμένουν μέχρι να απελευθερωθούν από τη διεργασία που τις χρησιμοποιεί (2) Οι συσκευές υποχρησιμοποιούνται Οι απαιτήσεις των διεργασιών είναι τυχαίες οι διεργασίες δε χρησιμοποιούν συνεχώς τη συσκευή που δεσμεύουν Αποτελεσματική χρήση σταθερή ροή δεδομένων φυσική ταχύτητα συσκευής (σπάνιο/αδύνατο) απαιτήσεις διεργασία > φυσική ταχύτητα η διεργασία πρέπει να περιμένει απαιτήσεις διεργασία < φυσική ταχύτητα η συσκευή υποχρησιμοποιείται (underutilized) ενταμίευση: μετριάζει το πρόβλημα (3) Πιθανότητα αδιεξόδων 8

Σκοπός-Στόχοι Διαχείριση E/E ΛΥΣΗ Λογικές ή εικονικές συσκευές = spoolers προσομοίωση αφιερωμένων συσκευών ως (κατα)μεριζόμενων μεταφορά απαιτήσεων στη φυσική συσκευή ομαδική, συνεχής, επιγραμμής (on-line) ελάττωση πιθανότητας συναγωνισμού, καθυστερήσεων, αδιεξόδων, κ.ά. Διαχειριστές συσκευών = Διαχειριστές αφιερωμένων και (κατα)μεριζόμενων συσκευών Spoolers = Διαχειριστές εικονικών συσκευών 9

Περιγραφητής συσκευής (Device Descriptor) περιέχει για τη συσκευή φυσική διεύθυνση (αριθμό) όνομα κατάσταση (απασχολημένη, ελεύθερη, χαλασμένη) αριθμό (διεύθυνση) του ελεγκτή ή του διαύλου με τον οποίο είναι συνδεδεμένη η συσκευή πληροφορίες για την απομόνωση των ιδιαίτερων χαρακτηριστικών της συσκευής από το διαχειριστή της εντολές λειτουργίας συσκευής κ.ά. ταυτότητα διεργασίας που χρησιμοποιεί τη συσκευή 10

Πίνακας Περιγραφητών Συσκευών (Device Descriptor Table, DDT) περιέχει τους περιγραφητές όλων των συσκευών του συστήματος Πίνακας Εκχώρησης των Συσκευών (Device Assignment Table) σε μερικά συστήματα χρησιμοποιείται για τη δέσμευση και/ή την καταχώριση των (αφιερωμένων) συσκευών στις διάφορες διεργασίες κάθε στοιχείο του αντιστοιχεί σε μία συσκευή περιέχει πληροφορίες για τη χρήση κάθε συσκευής σε κάθε χρονική στιγμή 11

Εικονικές εντολές και υποπρογράμματα ε/ε read, write, get, put,... καλούνται από τα προγράμματα χρηστών προσδιορίζουν το ρεύμα/αρχείο τη διεύθυνση της μνήμης προς/από την οποία θα αρχίσουν να μεταφέρονται δεδομένα Υλοποίηση διαφέρει πολύ από σύστημα σε σύστημα αμιγείς διαδικασίες τα προγράμματά τους μπορούν να μοιραστούν ταυτόχρονα από περισσότερες από μία διεργασίες 12

Λειτουργίες Διαχείριση E/E Αντιστοίχηση αριθμού/ονόματος ρεύματος/αρχείου - συσκευής Έλεγχος παραμέτρων που τους δίνονται σύγκριση των τιμών τους με τ' αντίστοιχα πεδία του περιγραφητή της συσκευής ή του αρχείου σωστά συναρμολόγηση μηνύματος Ομάδα (Απ)Αίτησης Ε/Ε (Ι/Ο Request Block, IORB) λάθος επιστροφή της διαδικασίας Επικοινωνία με το διαχειριστή της συσκευής αποστολή του ΙΟRΒ προς το διαχειριστή συσκευής αυτός ξεκινάει τη συσκευή και εξυπηρετεί την απαιτούμενη μεταφορά Τέλος μεταφοράς ο διαχειριστής συσκευής αφυπνίζεται από τη διαδικασία εξυπηρέτησης της αντίστοιχης διακοπής ειδοποιεί τη διεργασία που ζήτησε Ε/Ε ότι η μεταφορά των δεδομένων έχει ολοκληρωθεί 13

Διαχειριστές περιφερειακών συσκευών διεργασίες συστήματος εξυπηρετούν τις απαιτήσεις ε/ε των υπόλοιπων διεργασιών καθένας ελέγχει μία συσκευή (π.χ. ποντίκι) ή ένα σύνολο παρόμοιων συσκευών (τερματικά, εκτυπωτές) Λειτουργία Εκτέλεση μιας άπειρης ανακύκλωσης κατά τη διάρκεια της οποίας δέχεται ένα ΙΟRB από μια διεργασία αποταμιεύει την ταυτότητα της διεργασίας μεταφράζει το μήνυμα αυτό σε κατάλληλες εντολές για τον ελεγκτή της συσκευής οι εντολές εξάγονται από τον περιγραφητή της συσκευής ετοιμάζει το πρόγραμμα του ελεγκτή δρομολογεί τις απαιτήσεις της διεργασίας δεσμεύει τη φυσική συσκευή για τη διεργασία (αν χρειάζεται) 14

Διαχειριστές περιφερειακών συσκευών Λειτουργία (συνέχεια) εκδίδει τις (προνομιούχες) φυσικές εντολές ε/ε εμποδίζεται μέχρι να συμπληρωθεί η μεταφορά των δεδομένων (αν χρειάζεται) αντιμετωπίζει τα σφάλματα λειτουργίας της συσκευής που συνέβησαν κατά τη μεταφορά των δεδομένων γνωστοποιεί το αποτέλεσμα στη διεργασία που ζήτησε ε/ε διακόπτει τη σύνδεση της διεργασία με την συσκευή αποδεσμεύει την συσκευή (αν χρειάζεται) Επιπλέον, μερικοί διαχειριστές (κατα)μεριζόμενων συσκευών εφαρμόζουν πολιτικές βελτίωσης της χρήσης τους 15

Διαχειριστές τερματικών Διαχείριση E/E Είσοδος (χαρακτήρων από το πληκτρολόγιο) συλλογή χαρακτήρων από το πληκτρολόγιο αποστολή τους στις διεργασίες που ζήτησαν να διαβάσουν σε κάθε πίεση (και άφεση) πλήκτρου συμβαίνει μια διακοπή διαδικασία εξυπηρέτησης διακοπής βάζει το χαρακτήρα σ έναν ενταμιευτή αφυπνίζει το διαχειριστή του τερματικού δύο βασικοί τρόποι αποστολής χαρακτήρων ωμός (raw): όπως πληκτρολογούνται μαγειρεμένος (cooked) ο διαχειριστής συντάσσει τους χαρακτήρες και στέλνει ολόκληρες γραμμές στη διεργασία που ζήτησε να τους διαβάσει 16

Διαχειριστές τερματικών Διαχείριση E/E Είσοδος (χαρακτήρων από το πληκτρολόγιο) (πιθανή) μετάφραση των χαρακτήρων ενταμίευση των χαρακτήρων δύο μέθοδοι δεξαμενή ενταμιευτών (π.χ. 16 χαρακτήρες ο καθένας) ένας μεγάλος (κυκλικός) ενταμιευτής (π.χ. 256 χαρακτήρων) ευκολότερη υλοποίηση μεγαλύτερη ταχύτητα σπατάλη περισσότερου χώρου 17

Διαχειριστές τερματικών Έξοδος (στην οθόνη) Διαχείριση E/E Εμφάνιση στην οθόνη των χαρακτήρων που πληκτρολογούνται [ηχώ (echo)] εξόδου των διεργασιών Ειδική αντιμετώπιση χαρακτήρων (Enter, Tab, BS, Esc, ), Ποντίκι Διακοπές, αν η ταχύτητα μετάδοσης είναι μικρή Ενταμίευση Είσοδος + έξοδος υπολογισμός της θέσης του δρομέα (cursor) 18

Διαχειριστές τερματικών Διαχείριση E/E Μεγάλες διαφορές στα χαρακτηριστικά και στον τρόπο λειτουργίας των τερματικών κάθε τερματικό έχει έναν αριθμό/διεύθυνση μέσω της οποίας είναι δυνατό να προσπελαστεί (ο/οι ενταμιευτής/ές του) έναν περιγραφητή (terminal descriptor) που είναι γνωστός και ως ομάδα ελέγχου του τερματικού (terminal control block) και περιέχει: τον αριθμό/διευθύνση του τερματικού την κατάστασή του (έτοιμο, απασχολημένο, εκτός λειτουργίας) δείκτες των (κεφαλών/λιστών των) ενταμιευτών εισόδου και εξόδου ταυτότητα της διεργασίας που το χρησιμοποιεί τον τρόπο μετάφρασης του (εξωτερικού) κώδικά του κ.ά. 19

SPOOLing Ενταμίευση ολόκληρων αρχείων στο δίσκο Λειτουργίες: εκτύπωση, e-mail, SPOOLers Oι διεργασίες που εκτελούν τις λειτουργίες αυτές Υλοποίηση Καλούν το διαχειριστή των αρχείων για να τους παραχωρήσει περιοχές του δίσκου τοποθετούν αρχεία στην περιοχή εισόδου τους του επιστρέψουν ελευθερωμένες περιοχές αφού στείλουν αρχεία στην έξοδό τους 20

SPOOLers Το σύστημα (ο διαχειριστής αρχείων) γνωρίζει τις θέσεις, τις καταστάσεις και τα μεγέθη των περιοχών που χρησιμοποιούνται από τους spoolers για την αποθήκευση των αρχείων εισόδου/εξόδου τους περιγραφητές των περιοχών (spool area descriptors) περιγραφητές των αρχείων (file descriptors) Ενταμίευση Μεταφορά δεδομένων σε φυσικές ομάδες δεδομένων (physical blocks) Ενταμίευση των ομάδων σε n λογικές εγγραφές (π.χ. γραμμές) ταχύτητα εικονικής συσκευής (π.χ. εκτυπωτή) n x (ταχύτητα της φυσικής αφιερωμένης συσκευής) 21

Λειτουργία Spooler εξόδου μια διεργασία θέλει να εκτυπώσει ένα αρχείο η διεργασία γράφει στο αρχείο ο spooler είναι και η μόνη διεργασία που επιτρέπεται να χρησιμοποιήσει τον/ους εκτυπωτή/ές όταν η διεργασία κλείσει το αρχείο το αρχείο ή ο περιγραφητής του εισάγονται σ ένα ειδικό ευρετήριο του spooler εξόδου ο spooler ζητάει από το διαχειριστή ενός εκτυπωτή να τυπώσει το αρχείο 22

Λειτουργία Spooler ηλεκτρονικού ταχυδρομείου μεταφορά αρχείων μεταξύ διεργασιών που εκτελούνται στους υπολογιστές ενός δικτύου αποστολή αρχείου εισαγωγή του αρχείου/περιγραφητή του σ ένα ειδικό ευρετήριο του spooler του δικτύου αργότερα, η διεργασία spooler του δικτύου διαβάζει το αρχείο και το μεταδίδει στο δίκτυο το αρχείο εισάγεται στην ουρά του αντίστοιχου spooler της μηχανής προορισμού ο οποίος τελικά το στέλνει στη διεργασία παραλήπτη που βρίσκεται στη μηχανή αυτή 23

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

Κρυφή Μνήμη Δίσκου (Disk Cache) για την επιτάχυνση της πρόσβασης σε δεδομένα στο δίσκο είτε στον ελεγκτή του δίσκου (hard disk cache) είτε μέρος της κύριας μνήμης (soft disk cache) ενταμιεύει τα δεδομένα που προσπελάστηκαν πρόσφατα ο οδηγός του δίσκου ελέγχει πρώτα αν τα δεδομένα που θέλει να προσπελάσει βρίσκονται στην κρυφή μνήμη σε μερικά συστήματα: προκαταβολική ενταμίευση στην κρυφή μνήμη 25

Κρυφή μνήμη δίσκου Πρόβλημα κατάρρευση συστήματος απώλεια (ενημερωμένων) περιεχομένων κρυφής μνήμης Λύσεις συχνή αντιγραφή από την κρυφή μνήμη στο δίσκο επανεγγραφή (write-back ή copy-back cache) απώλεια λιγότερων δεδομένων αποθήκευση στην κρυφή μνήμη μόνο δεδομένων που διαβάζονται τα δεδομένα που γράφονται αποθηκεύονται αμέσως στο δίσκο δια μέσου εγγραφή (write-through cache) καμία απώλεια δεδομένων μεγαλύτερη κυκλοφορία στη λεωφόρο ε/ε 26

Πολιτικές διαχείρισης δίσκων Άφιξη απαίτησης στο διαχειριστή δίσκου Αδρανής δίσκος ο διαχειριστής μπορεί να εκδώσει αμέσως τις εντολές ε/ε ισχύει σε πολλές περιπτώσεις (πειράματα προσομοίωσης) Απασχολημένος δίσκος ο βραχίονας του αναζητεί τον τομέα μιας απαίτησης άφιξη άλλων απαιτήσεων ουρά διαχειριστή δίσκου με ποια σειρά θα εξυπηρετηθούν οι απαιτήσεις στην ουρά του διαχειριστή? Ελαχιστοποίηση χρόνου αναζήτησης (ίχνους) FCFS δίκαιη (fair) δεν μπορεί να μεγιστοποιήσει τη ρυθμαπόδοση του δίσκου Με τη βάση την προτεραιότητα πιθανός υποσιτισμός 27

Πολιτικές διαχείρισης δίσκων Εξυπηρέτηση με βάση το Μικρότερο Χρόνο Αναζήτησης (Shortest-Seek-Time- First/Νext SSTF/N) εξυπηρετείται πρώτα η απαίτηση με τον ελάχιστο χρόνο αναζήτησης αυτή που το ίχνος της βρίσκεται πλησιέστερα προς την τρέχουσα θέση της κεφαλής του δίσκου (τον τρέχοντα κύλινδρο) σημαντική αύξηση της ρυθμαπόδοσης του δίσκου Προβλήματα πιθανός υποσιτισμός απαιτήσεων προς απομακρυσμένα ίχνη πολυπρογραμματισμός: άφιξη απαιτήσεων στην ουρά του διαχειριστή δίσκου οποιαδήποτε χρονική στιγμή ακατάλληλη πολιτική για τα συστήματα αλληλεπίδρασης απόκλιση χρόνων εξυπηρέτησης απαιτήσεων 28

Πολιτικές διαχείρισης δίσκων Βασικός Αλγόριθμος Σάρωσης (SCAN algorithm) λαμβάνει υπόψη του τη δυναμική φύση των απαιτήσεων προσπαθεί να ελαττώσει την κίνηση της κεφαλής και το μέσο χρόνο αναμονής ελαχιστοποιεί τη συχνότητα αλλαγής της φοράς κίνησης του βραχίονα προσπέλασης Ο βραχίονας ξεκινάει από το ένα άκρο του δίσκου κινείται προς το άλλο εξυπηρετώντας τις απαιτήσεις στα ίχνη που συναντά όταν φθάσει στην περιφέρεια ή στο κέντρο του δίσκου, η φορά της κίνησής της αντιστρέφεται γνωστός και ως αλγόριθμος ανελκυστήρα (elevator algorithm) 29

Πολιτικές διαχείρισης δίσκων Βασικός Αλγόριθμος Σάρωσης (SCAN algorithm) Πλεονέκτημα Μικροί χρόνοι αναμονής Αποφυγή υποσιτισμού Χειρότερη περίπτωση (μέχρι να εξυπηρετηθεί μία απαίτηση) πλήθος των κυλίνδρων που θα διανυθούν = 2 x (πλήθος κυλίνδρων του δίσκου) Μειονέκτημα (υπόθεση: ομοιόμορφη κατανομή απαιτήσεων) λίγες απαιτήσεις στο ένα άκρο του δίσκου οι απαιτήσεις αυτές έχουν μόλις εξυπηρετηθεί σχετικά πολλές απαιτήσεις στο άλλο άκρο του δίσκου οι απαιτήσεις αυτές έχουν ήδη το μεγαλύτερο χρόνο αναμονής 30

Πολιτικές διαχείρισης δίσκων Αλγόριθμος Κυκλικής Σάρωσης (C-SCAN algorithm) παραλλαγή του αλγορίθμου σάρωσης με μικρότερη διακύμανση χρόνων αναμονής ο βραχίονας κινείται από το ένα άκρο του δίσκου στο άλλο εξυπηρετώντας τις απαιτήσεις για τα ίχνη που διανύει ΜΟΝΟ κατά τη μία φορά της κίνησης του (όταν φθάνει στο ένα άκρο επιστρέφει αμέσως στο άλλο χωρίς να εξυπηρετήσει καμία ενδιάμεση απαίτηση) κυκλική κίνηση κεφαλής 31

Πολιτικές διαχείρισης δίσκων Αλγόριθμοι LOOK και C-LOOK παραλλαγές των αλγορίθμων SCAN και C-SCAN η κεφαλή κινείται μόνο αν υπάρχουν απαιτήσεις αναζητεί (look) πρώτα αν υπάρχει μια απαίτηση πριν κινηθεί χρησιμοποιούνται στα περισσότερα συστήματα ειδικά όταν ο φόρτος των δίσκων είναι μέσος ή μεγάλος 32

Πολιτικές διαχείρισης δίσκων Αλγόριθμοι LOOK και C-LOOK LOOK μεταβλητή τύπου boolean στο διαχειριστή δίσκου περιγράφει τη φορά κίνησης (μέσα ή έξω) Όταν τελειώσει η εξυπηρέτηση μιας απαίτησης, ο διαχειριστής εξετάζει τη μεταβλητή αν υπάρχει απαίτηση προς την ίδια φορά δίνει εντολή στο βραχίονα να προχωρήσει αν δεν υπάρχει η τιμή της μεταβλητής αλλάζει εξυπηρετείται η πλησιέστερη απαίτηση προς την αντίθετη φορά (αν υπάρχει) C-LOOK αν δεν υπάρχει απαίτηση προς την φορά κίνησης η κεφαλή επιστρέφει στο πρώτο ίχνος 33

Πολιτικές διαχείρισης δίσκων Καταχώριση αρχείων Επηρεάζει πολύ σημαντικά την κατανομή των απαιτήσεων προς το διαχειριστή δίσκου Αν οι ομάδες ενός αρχείου έχουν καταχωρηθεί σε διαδοχικούς κυλίνδρους δημιουργείται περιορισμένη κίνηση της κεφαλής Αν οι ομάδες έχουν καταχωρηθεί μέσω δεικτών η κεφαλή μπορεί να χρειαστεί να κινηθεί σε μεγάλες αποστάσεις, παρόλο που ο διαθέσιμος χώρος του δίσκου χρησιμοποιείται καλύτερα! 34

Πολιτικές διαχείρισης δίσκων Καταχώριση ευρετηρίων Τα ευρετήρια προσπελάζονται συχνά κάθε αρχείο πρέπει να ανοιχτεί προτού χρησιμοποιηθεί το άνοιγμα ενός αρχείου προϋποθέτει το ψάξιμο ευρετηρίων Καταχώρηση ευρετηρίων στο μέσο του δίσκου (αντί στα άκρα) ελάττωση της συνολικής κίνησης της κεφαλής 35

Πολιτικές διαχείρισης δίσκων Δίσκοι κινητής κεφαλής οι απαιτήσεις για το ίδιο ίχνος/κύλινδρο εξυπηρετούνται χωρίς να κινηθεί η κεφαλή με τη σειρά που εμφανίζονται κάτω από την κεφαλή Δίσκοι σταθερής κεφαλής μία κεφαλή για κάθε ίχνος μία ουρά για κάθε τομέα (sector queue) οι απαιτήσεις για έναν τομέα τοποθετούνται στην ουρά του εξυπηρέτηση απαιτήσεων με τη σειρά των τομέων στους οποίους αναφέρονται κάθε φορά που ένας τομέας φθάσει κάτω από την κεφαλή εξυπηρετείται η πρώτη απαίτηση της ουράς του Βελτίωση της ρυθμαπόδοσης 36