ΣΥΓΧΡΟΝΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Τρίτη Έκδοση ANDREW S ΣΥΓΧΡΟΝΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Τρίτη Έκδοση ANDREW S. TANENBAUM Κεφάλαιο 3 Διαχείριση Μνήμης A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Χωρίς αφαίρεση μνήμης Εικόνα 3-1. Τρεις απλοί τρόποι οργάνωσης μνήμης με το λειτουργικό σύστημα και μια διεργασία χρήστη. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Πολλά προγράμματα χωρίς αφαίρεση μνήμης Εικόνα 3-2. Το πρόβλημα της επανατοποθέτησης. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Καταχωρητές βάσης και ορίου Εικόνα 3-3. Καταχωρητές βάσης και ορίου χρησιμοποιούνται για να δώσουν ξεχωριστό χώρο δνσεων σε κάθε διεργασία. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Εναλλαγή (1) Εικόνα 3-4. Η κατανομή μνήμης αλλάζει καθώς οι διεργασίες μπαίνουν και βγαίνουν στη μνήμη. Οι σκιασμένες περιοχές είναι αχρησιμοποίητη μνήμη. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Εναλλαγή (2) Εικόνα 3-5. (α) Κατανομή χώρου για αυξανόμενο τμήμα δεδομένων. (β) Κατανομή χώρου για αυξανόμενη στοίβα, και αυξανόμενο τμήμα δεδομένων. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Εικονική Μνήμη – Σελιδοποίηση (1) Εικόνα 3-8. Η θέση και συνάρτηση της Μονάδας Διαχείρισης Μνήμης – φαίνεται σαν μέρος του τσιπ της CPU (έτσι είναι σήμερα). Λογικά μπορεί να είναι σε ξεχωριστό τσιπ όπως τα παλαιότερα χρόνια. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Σελιδοποίηση (2) Εικόνα 3-9. Σχέση μεταξύ των εικονικών δνσεων και των φυσικών δνσεων μνήμης που δίνεται από τον πίνακα σελίδων. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Σελιδοποίηση (3) Εικόνα 3-10. Εσωτερική λειτουργία της ΜΔΜ με 16 σελίδες των 4-KB. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Αλγόριθμοι αντικατάστασης σελίδας Βέλτιστος αλγόριθμος αντικατάστασης σελίδας. Αντικατάσταση σελλίδας που δεν χρησιμοιήθηκε πρόσφατα (not recently used) Αντικατάσταση σελίδα με τη σειρά άφιξης (First-In, First-Out) Αντικατάσταση σελίδας δεύτερης ευκαιρίας Αντικατάσταση σελίδας με ρολόι Αντικατάσταση σελίδα που χρησιμοποιήθηκε λιγότερο πρόσφατα (least recently used) Αντικατάσταση σελίδας με σύνολο εργασίας (working set) Αντικατάσταση σελίδαςWSClock A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Αλγόριθμος δεύτερης ευκαιρίας Εικόνα 3-15. Λειτουργία δεύτερης ευκαιρίας. (α) σελίδες ταξινομημένες σε σειρά FIFO. (β) Λίστα σελίδων αν συμβεί σφάλμα σελίδας τη στιγμή 20 και η Α έχει το bit Α με τιμη 1. Οι αριθμοί πάνω από τις σελίδες είναι οι χρόνοι φόρτωσής τους. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Ο αλγόριθμος LRU Εικόνα 3-17. LRU με χρήση πίνακα όταν οι αναφορές των σελίδων είναι 0, 1, 2, 3, 2, 1, 0, 3, 2, 3. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Ξεχωριστοί χώροι εντολών και δεδομένων Εικόνα 3-25. (α) Ένας χώρος δνσεων. (β) Ξεχωριστοί χώροι εντολών και δεδομένων. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Κοινόχρηστες σελίδες Εικόνα 3-26. Δύο διεργασίες που μοιράζονται το ίδιο πρόγραμμα μοιραζόμενες τον πίνακα σελίδων του. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Κοινόχρηστες βιβλιοθήκες Εικόνα 3-27. Κοινόχρηστη βιβλιοθήκη. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Εικόνα 3-29. (α) Σελιδοποίηση σε στατική περιοχή εναλλαγής. Δευτερεύουσα μνήμη (1) Εικόνα 3-29. (α) Σελιδοποίηση σε στατική περιοχή εναλλαγής. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Εικόνα 3-29. (β) Δυναμικά αντίγραφα σελίδων. Δευτερεύουσα μνήμη (2) Εικόνα 3-29. (β) Δυναμικά αντίγραφα σελίδων. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Τμηματοποίηση (1) Ένας μεταγλωττιστής έχει πολλούς πίνακες που κτίζονται καθώς προχωρά η μεταγλώττιση, και περιλαμβάνουν: Ο πηγαίος κώδικας αποθηκεύεται για την εκτυπωμένη λίστα (σε συστήματα δέσμης) Ο πίνακας συμβόλων (symbol table) – τα ονόματα και οι ιδιότητες των μεταβλητών. Ο πίνακας με τις ακέραιες και κινητής υποδιαστολής σταθερές. Το δέντρο συντακτικής νάλυσης (parse tree) του προγράμματος. Η στοίβα που χρησιμοποιείται για τις κλήσεις διαδικασιών μέσα στο μεταγλωττιστή. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Τμηματοποίηση (2) Εικόνα 3-31. Σε ένα μονοδιάστατο χώρο δνσεων με πίνακες που μεγαλώνουν, ένας πίνακας μπορεί να πέσει στον άλλο. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Τμηματοποίηση (3) Εικόνα 3-32. Μια τμηματοποιημένη μνήμη επιτρέπει σε κάθε πίνακα να αυξομειώνεται ανεξάρτητα από τους άλλους. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Τμηματοποίηση με σελιδοποίηση: ο Pentium (4) Εικόνα 3-42. Απεικόνιση γραμμικής δνσης σε φυσική δνση. A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)
Τμηματοποίηση με σελιδοποίηση: ο Pentium (5) A.S. Tanenbaum, Σύγχρονα Λειτουργικά Συστήματα, 3η έκδοση, Κλειδάριθμος, 2009, μετάφραση & επιστημονική επιμέλεια: Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών (μεταφρασμένες διαφάνειες του πρωτότυπου αμερικανικού βιβλίου: A.S.Tanenbaum, Modern Operating Systems 3e, 2008 Prentice-Hall, Inc.)