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

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

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

Transcript

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

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

3 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Οι εικόνες προέρχονται από το βιβλίο «Σύγχρονα Λειτουργικά Συστήματα», A.S. Tanenbaum, 3 η έκδοση, 2009, Εκδόσεις Κλειδάριθμος. 3

4 Σκοποί ενότητας Κατανόηση της ανάγκης αφαίρεσης μνήμης Εξοικείωση με τις βασικές τεχνικές οργάνωσης της εικονικής μνήμης: σελιδοποίηση και τμηματοποίηση Κατανόηση των βασικών αλγορίθμων αντικατάστασης σελίδων Εξοικείωση με τα βασικά ζητήματα σχεδιασμού και υλοποίησης εικονικής μνήμης 4

5 Περιεχόμενα ενότητας Χωρίς αφαίρεση μνήμης Χώροι διευθύνσεων Εικονική μνήμη Αλγόριθμοι αντικατάστασης σελίδων Θέματα σχεδιασμού Ζητήματα υλοποίησης Τμηματοποίηση 5

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

7 Εισαγωγή (1 από 2) Η μνήμη είναι μόνιμα κρίσιμος πόρος Η διαθέσιμη μνήμη αυξάνεται συνεχώς Δυστυχώς μεγαλώνουν και τα προγράμματα! Ιεραρχία μνήμης Από την κρυφή μνήμη του επεξεργαστή Μέχρι τους μαγνητικούς δίσκους Διαφορετικοί συμβιβασμοί ταχύτητας / κόστους 7

8 Εισαγωγή (2 από 2) Διαχειριστής (ιεραρχίας) μνήμης Ποια τμήματα της μνήμης χρησιμοποιούνται; Πόση μνήμη παραχωρείται σε κάθε διεργασία; Ποια μνήμη έχει κάθε διεργασία; Λογισμικό που αξιοποιεί εξειδικευμένο υλικό Υλικό που παρακολουθεί τις προσπελάσεις Υλικό που επιβάλλει κανόνες προστασίας 8

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

10 Χωρίς αφαίρεση μνήμης (1 από 5) Όλοι βλέπουν απευθείας τη μνήμη Σύνολο διευθύνσεων από 0 έως n Ένα μόνο πρόγραμμα σε κάθε στιγμή Λειτουργικό σύστημα σε RAM ή ROM 10

11 Χωρίς αφαίρεση μνήμης (2 από 5) Λειτουργία συστημάτων με μία διεργασία Το λειτουργικό δίνει προτροπή στο χρήστη Ο χρήστης πληκτρολογεί όνομα προγράμματος Το πρόγραμμα φορτώνεται και εκτελείται Στο τέλος επιστρέφουμε στο λειτουργικό Χρήση σε πρωτόλεια ή πολύ απλά συστήματα Πολυπρογραμματισμός με εναλλαγή Φόρτωση και αποθήκευση ολόκληρων διεργασιών 11

12 Χωρίς αφαίρεση μνήμης (3 από 5) Πολυπρογραμματισμός χωρίς εναλλαγή Η συνύπαρξη στη μνήμη απαιτεί πρόσθετο υλικό Παράδειγμα: ΙΒΜ 360 με κλειδιά προστασίας Κάθε μπλοκ μνήμης 2 KB έχει ένα κλειδί προστασίας Το εκτελούμενο πρόγραμμα έχει ένα κλειδί προστασίας Ανάγκη επανατοποθέτησης (relocation) Έστω ότι έχουμε δύο προγράμματα στη μνήμη Τα προγράμματα δεν ξέρουν πού θα τοποθετηθούν Οι αναφορές σε διευθύνσεις αλλάζουν κατά τη φόρτωση 12

13 Χωρίς αφαίρεση μνήμης (4 από 5) Παράδειγμα: δύο προγράμματα στη μνήμη Θα πρέπει το ένα να επανατοποθετηθεί 13

14 Χωρίς αφαίρεση μνήμης (5 από 5) Υλοποίηση της επανατοποθέτησης Η επανατοποθέτηση επηρεάζει ορισμένες εντολές Όσες αναφέρονται σε απόλυτες διευθύνσεις μνήμης Ο φορτωτής πρέπει να διακρίνει αυτές τις εντολές Είτε θα ελέγχει το πρόγραμμα κατά τη φόρτωση Είτε το πρόγραμμα θα περιέχει αυτές τις πληροφορίες Εναλλακτικά, μεταγλώττιση στις σωστές θέσεις Εφικτό μόνο σε ενσωματωμένα συστήματα Γενικότερες λύσεις απαιτούν πρόσθετο υλικό 14

15 Χώροι διευθύνσεων Μάθημα: Λειτουργικά Συστήματα, Ενότητα # 3: Διαχείριση Μνήμης Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

16 Χώροι διευθύνσεων (1 από 3) Γιατί τα προγράμματα να μην βλέπουν τη μνήμη; Μπορούν να διαγράψουν ακόμη και το λειτουργικό! Είναι δύσκολο να έχουμε πολλά ταυτόχρονα Χώρος διευθύνσεων Λογική αφαίρεση της μνήμης μιας διεργασίας Αποτελείται από το σύνολο των διευθύνσεών της Διάφοροι τρόποι υλοποίησης σε υλικό Καταχωρητές βάσης και ορίου Μορφή δυναμικής επανατοποθέτησης Αρχικά σε CDC 6600, παραλλαγή σε 8088/

17 Χώροι διευθύνσεων (2 από 3) Καταχωρητές βάσης και ορίου Φόρτωση προγράμματος σε διαδοχικές θέσεις Αρχική διεύθυνση: καταχωρητής βάσης Η διεύθυνση προστίθεται στη βάση Δυναμική επανατοποθέτηση Μέγιστη διεύθυνση: καταχωρητής ορίου Η διεύθυνση δεν πρέπει να περνά το όριο Προστασία μνήμης Κόστος πράξεων σε κάθε προσπέλαση Σύγκριση και πρόσθεση 17

18 Χώροι διευθύνσεων (3 από 3) Παράδειγμα με δύο διεργασίες Οι καταχωρητές αλλάζουν μαζί με τη διεργασία 18

19 Εναλλαγή (1 από 4) Εναλλαγή διεργασιών Aν δεν χωράνε όλα τα προγράμματα στη μνήμη; Χρήση δίσκου για αποθήκευση αδρανών διεργασιών Εναλλαγή (swapping) των διεργασιών στη μνήμη 19

20 Εναλλαγή (2 από 4) Η εναλλαγή δημιουργεί «τρύπες» στη μνήμη Μία διεργασία που φεύγει αφήνει ένα κενό Στη θέση της μπαίνει ίση ή μικρότερη διεργασία Αν είναι μικρότερη, δημιουργείται «τρύπα» Περιοδικά χρειάζεται σύμπτυξη μνήμης Μεταφορά διεργασιών για να μην έχουμε κενά Μεγάλο κόστος για την αντιγραφή της μνήμης 20

21 Εναλλαγή (3 από 4) Διεργασίες με δυναμικό μέγεθος Οι στοίβες και οι σωροί επεκτείνονται δυναμικά Αν περάσουμε την αρχική κατανομή; Θα πρέπει αναγκαστικά να επεκταθούμε Αν η γειτονική περιοχή είναι κενή, ΟΚ Αλλιώς πρέπει να μεταφερθούμε αλλού Γενικά κατανέμουμε χώρο από την αρχή Ο χώρος μπορεί να μείνει αναξιοποίητος 21

22 Εναλλαγή (4 από 4) Εκχώρηση μνήμης για αύξηση μεγέθους Τα κενά τμήματα δεν μεταφέρονται από/προς το δίσκο 22

23 Διαχείριση ελεύθερης μνήμης (1 από 7) Το σύστημα παρακολουθεί τη διαθέσιμη μνήμη Διαχείριση μνήμης με χάρτες bit Διαίρεση της μνήμης σε ισομεγέθη τμήματα Ένα bit ανά τμήμα δείχνει αν είναι διαθέσιμο 23

24 Διαχείριση ελεύθερης μνήμης (2 από 7) Διαχείριση μνήμης με χάρτες bit Το μέγεθος της μονάδας κατανομής έχει σημασία Μεγάλη->μικρός χάρτης/μεγάλη σπατάλη Μέρος της τελευταίας μονάδας μπορεί να είναι κενό Μικρή->μεγάλος χάρτης/μικρή σπατάλη Χρονοβόρα αναζήτηση στο χάρτη bit Έστω ότι θέλουμε μια περιοχή k τμημάτων Πρέπει να ψάξουμε σειριακά το χάρτη bit 24

25 Διαχείριση ελεύθερης μνήμης (3 από 7) Διαχείριση μνήμης με συνδεδεμένες λίστες Λίστα με στοιχεία για κάθε τμήμα μνήμης Τύπος, αρχική διεύθυνση, μήκος Ο τύπος μπορεί να είναι διεργασία ή οπή Ταξινόμηση λίστας με διάφορους τρόπους Ταξινόμηση σύμφωνα με τις διευθύνσεις Εύκολη ενημέρωση όταν ελευθερώνεται η μνήμη Γενικά συγχωνεύονται τα γειτονικά στοιχεία 25

26 Διαχείριση ελεύθερης μνήμης (4 από 7) Διαχείριση μνήμης με συνδεδεμένες λίστες Συνήθως η λίστα είναι διπλά συνδεδεμένη Ενημέρωσή της ξεκινώντας από κάποιο τμήμα Η θέση του τμήματος φαίνεται στον πίνακα διεργασιών Διάφορες τεχνικές επιλογής τμήματος προς χρήση 26

27 Διαχείριση ελεύθερης μνήμης (5 από 7) Επιλογή τμήματος με συνδεδεμένες λίστες Πρώτη προσαρμογή (first fit) Χρησιμοποιείται η πρώτη οπή που ταιριάζει Επόμενη προσαρμογή (next fit) Όπως παραπάνω αλλά συνεχίζει από το τελευταίο σημείο Βέλτιστη προσαρμογή (best fit) Ψάχνουμε όλη τη λίστα για την μικρότερη δυνατή οπή Χειρότερη προσαρμογή (worst fit) Ψάχνουμε όλη τη λίστα για την μεγαλύτερη δυνατή οπή 27

28 Διαχείριση ελεύθερης μνήμης (6 από 7) Επιλογή τμήματος με συνδεδεμένες λίστες Χρήση χωριστών λιστών για οπές και διεργασίες Πιο γρήγορη αναζήτηση στη λίστα οπών Η λίστα οπών ταξινομείται με το μέγεθος Πιο γρήγορη αναζήτηση της κατάλληλης οπής Βέλτιστη προσαρμογή = πρώτη προσαρμογή Δεν χρειάζεται εξωτερική λίστα οπών Οι δείκτες αποθηκεύονται στις ίδιες τις οπές Πιο δύσκολη ενημέρωση στην αποδέσμευση Πρέπει να δούμε πού θα μπει η διαθέσιμη μνήμη 28

29 Διαχείριση ελεύθερης μνήμης (7 από 7) Γρήγορη προσαρμογή (quick fit) Διατήρηση λιστών οπών με διάφορα μεγέθη Πολύ γρήγορος εντοπισμός κατάλληλης οπής Πιο δύσκολη ενημέρωση στην αποδέσμευση Πρέπει να ψάξουμε για γειτονικές οπές Δεν ξέρουμε όμως σε ποιες λίστες είναι! 29

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

31 Εικονική μνήμη (1 από 2) Γιατί χρειάζεται η εικονική μνήμη; Εκτέλεση τεράστιων προγραμμάτων Εκτέλεση πολλών προγραμμάτων ταυτόχρονα Η εναλλαγή είναι πολύ ακριβή λύση Υπερθέματα (overlays) Επιτρέπει εκτέλεση μεγάλων προγραμμάτων Κάθε πρόγραμμα χωρίζεται σε υπερθέματα Αρχικά φορτώνεται ο διαχειριστής υπερθεμάτων Ο διαχειριστής φορτώνει το αρχικό υπέρθεμα Τα άλλα υπερθέματα φορτώνονται όταν χρειάζονται 31

32 Εικονική μνήμη (2 από 2) Εικονική μνήμη (virtual memory) Κάθε πρόγραμμα έχει δικό του χώρο διευθύνσεων Ο χώρος διαιρείται σε σελίδες σταθερού μεγέθους Ορισμένες σελίδες βρίσκονται στη μνήμη Οι υπόλοιπες βρίσκονται στο δίσκο Το υλικό μεταφράζει αυτόματα τις αναφορές μνήμης Χρησιμοποιεί έναν πίνακα μετάφρασης Οι αναφορές σε μη διαθέσιμες σελίδες παγιδεύονται Το λειτουργικό φορτώνει την αντίστοιχη σελίδα στη μνήμη 32

33 Σελιδοποίηση (1 από 5) Σελιδοποίηση (paging) Κάθε πρόγραμμα έχει έναν εικονικό χώρο διευθύνσεων Οι εντολές του αναφέρονται σε εικονικές διευθύνσεις Η μονάδα διαχείρισης μνήμης τις μετατρέπει σε φυσικές Οι φυσικές διευθύνσεις τοποθετούνται στο δίαυλο 33

34 Σελιδοποίηση (2 από 5) Παράδειγμα Εικονικός χώρος 64 K Διαιρείται σε σελίδες Φυσική μνήμη 32 K Διαιρείται σε πλαίσια Σελίδες - πλαίσια 4 K 16 σελίδες - 8 πλαίσια Ορισμένες λείπουν (Χ) Σφάλμα αν προσπελαστούν Το ΛΣ ελευθερώνει πλαίσιο και φέρνει τη σελίδα 34

35 Σελιδοποίηση (3 από 5) Λειτουργία MMU Σπάσιμο διεύθυνσης 4 bit σελίδα+12 bit απόσταση Πίνακας χαρτογράφησης Έχει 2 4 =16 θέσεις Περιέχει bit παρουσίας Δίνει 3 bit για το πλαίσιο Έλεγχος bit παρουσίας Αν είναι 0, σφάλμα σελίδας Αν είναι 1, διαβάζουμε 3 bit 35

36 Σελιδοποίηση (4 από 5) Πίνακες σελίδων Κάθε διεύθυνση αποτελείται από 2 μέρη Αριθμός εικονικής σελίδας: περισσότερο σημαντικά bit Απόσταση μέσα στη σελίδα: λιγότερο σημαντικά bit Η διαίρεση καθορίζει το μέγεθος και πλήθος των σελίδων Ο αριθμός εικονικής σελίδας χρησιμοποιείται ως δείκτης Επιλέγει μία καταχώριση από τον πίνακα σελίδων Αν υπάρχει η σελίδα στη μνήμη, διαβάζουμε αριθμό πλαισίου Ο αριθμός πλαισίου επισυνάπτεται στην απόσταση Το αποτέλεσμα στέλνεται στο δίαυλο της μνήμης 36

37 Σελιδοποίηση (5 από 5) Δομή καταχώρισης πίνακα σελίδων Η ακριβής μορφή εξαρτάται από τη μηχανή Bit προστασίας: τι είδους πρόσβαση επιτρέπεται Μπορεί να είναι RO/RW ή R/W/X Bit τροποποίησης: η σελίδα έχει τροποποιηθεί πρόσφατα Πρέπει να γραφτεί στη μνήμη πριν απομακρυνθεί Bit αναφοράς: η σελίδα έχει χρησιμοποιηθεί πρόσφατα Bit κρυφής μνήμης: όχι αποθήκευση στην κρυφή μνήμη 37

38 Επιτάχυνση σελιδοποίησης (1 από 4) Η χαρτογράφηση πρέπει να είναι πολύ γρήγορη Κάθε αναφορά στη μνήμη απαιτεί χαρτογράφηση Μία εντολή μπορεί να περιέχει πολλές αναφορές Ο πίνακας σελίδων μπορεί να είναι πολύ μεγάλος Εξαρτάται από μέγεθος μνήμης και σελίδας Πού βρίσκεται ο πίνακας σελίδων; Σε καταχωρητές: γρήγορη χαρτογράφηση Μεγάλος χρόνος μεταγωγής και πολύ μεγάλο κόστος Στη μνήμη: γρήγορη μεταγωγή (αλλαγή καταχωρητή) Πολύ χαμηλή επίδοση λόγω αναφορών στη μνήμη 38

39 Επιτάχυνση σελιδοποίησης (2 από 4) Κρυφή μνήμη αναζήτησης μετάφρασης (TLB) Όλοι οι πίνακες σελίδων αρχικά βρίσκονται στη μνήμη Είναι ανέφικτο να έχουμε όλο τον πίνακα σε καταχωρητές Τα προγράμματα χρησιμοποιούν λίγες σελίδες σε κάθε στιγμή Αποθήκευση των μεταφράσεων σε κρυφή μνήμη Ονομάζεται και συνειρμική (associative) μνήμη Αποτελείται από λίγους καταχωρητές μέσα στην MMU 39

40 Επιτάχυνση σελιδοποίησης (3 από 4) Έστω ότι μια εικονική διεύθυνση στέλνεται στην MMU Η MMU συγκρίνει τον αριθμό σελίδας με την TLB Οι συγκρίσεις γίνονται παράλληλα με όλους τους καταχωρητές Προφανώς αυτό ανεβάζει σημαντικά το κόστος της TLB Αν η σελίδα βρεθεί σχηματίζεται η φυσική διεύθυνση Εκτός αν υπάρχει σφάλμα προστασίας Αν η σελίδα δεν βρεθεί καταφεύγουμε σε πίνακα σελίδων Αντικαθιστά μια από τις υπάρχουσες καταχωρίσεις Όλη η διαδικασία γίνεται μέσω του υλικού της MMU Σε ορισμένα συστήματα (RISC) εμπλέκεται και το λογισμικό 40

41 Επιτάχυνση σελιδοποίησης (4 από 4) Διαχείριση αστοχιών TLB με λογισμικό Το λειτουργικό σύστημα αντιμετωπίζει την αστοχία Διαβάζει πίνακα σελίδων και δημιουργεί νέα καταχώριση Επιλέγει την καταχώριση που θα αντικατασταθεί Σημαντική απλοποίηση της MMU Επιτρέπει στο λειτουργικό ορισμένες βελτιστοποιήσεις Φόρτωση καταχωρίσεων πριν χρειαστούν οι σελίδες Δύο είδη αστοχιών σελίδων στη διαχείριση με λογισμικό Ήπια αστοχία: η σελίδα είναι στη μνήμη αλλά όχι στην TLB Αυστηρή αστοχία: η σελίδα δεν υπάρχει ούτε στη μνήμη 41

42 Πολύ μεγάλες μνήμες (1 από 4) Πίνακες σελίδων για μεγάλες μνήμες Παράδειγμα: εικονικές διευθύνσεις 32 bit και σελίδες 4 K Ο πίνακας σελίδων έχει 1 εκατομμύριο καταχωρίσεις! Πολυεπίπεδοι πίνακες σελίδων Παράδειγμα: εικονικές διευθύνσεις 32 bit και σελίδες 4 K Τα πρώτα 10 bit αναφέρονται στον πίνακα πρώτου επιπέδου Ο πίνακας χωράει ακριβώς σε μία σελίδα των 4 K Τα επόμενα 10 bit αναφέρονται στον δεύτερο πίνακα Και αυτός ο πίνακας χωράει σε μία σελίδα των 4 K Η απόσταση επισυνάπτεται για να βγει η τελική διεύθυνση 42

43 Πολύ μεγάλες μνήμες (2 από 4) Παράδειγμα πίνακα δύο επιπέδων 43

44 Πολύ μεγάλες μνήμες (3 από 4) Πολυεπίπεδοι πίνακες σελίδων Τα περισσότερα προγράμματα θέλουν λίγη μνήμη Αρκούν λίγοι πίνακες σελίδων στη μνήμη Πίνακες που δείχνουν σε στοίβα, σωρό και κώδικα Ανεστραμμένοι πίνακες σελίδων Οι πολυεπίπεδοι δεν φτάνουν για διευθύνσεις 64 bit Αντί για πίνακα σελίδων, έχουμε πίνακα πλαισίων Δείχνει ποια διεργασία / σελίδα είναι σε κάθε πλαίσιο Ανάλογος με το μέγεθος της φυσικής μνήμης Ανεξάρτητος από το πλήθος των διεργασιών 44

45 Πολύ μεγάλες μνήμες (4 από 4) Ανεστραμμένοι πίνακες σελίδων Χρήση TLB για τις συχνά χρησιμοποιούμενες σελίδες Χρήση πίνακα κατακερματισμού Κατακερματίζουμε την εικονική διεύθυνση 45

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

47 Αλγόριθμοι αντικατάστασης Αντικατάσταση σελίδας στη μνήμη Απαιτείται μετά από σφάλμα σελίδας Επιλέγεται μία σελίδα προς απομάκρυνση από τη μνήμη Αν έχει τροποποιηθεί, γράφεται στο δίσκο Στη συνέχεια φορτώνεται στη θέση της η νέα σελίδα Αλγόριθμοι αντικατάστασης σελίδων Στόχος: απομάκρυνση μιας «αχρησιμοποίητης» σελίδας Παρόμοιοι αλγόριθμοι με άλλα είδη αντικατάστασης Η χρονική κλίμακα είναι σχετικά μεγάλη Η νέα σελίδα πρέπει να φορτωθεί από το δίσκο 47

48 Ο βέλτιστος αλγόριθμος Βέλτιστος αλγόριθμος αντικατάστασης (OPT) Επιλέγεται η σελίδα που θα χρησιμοποιηθεί πιο αργά Ο αλγόριθμος είναι ο θεωρητικά βέλτιστος Δεν ξέρουμε πότε θα ξαναχρησιμοποιηθεί κάθε σελίδα Μπορούμε να τον δοκιμάσουμε με ένα πρόγραμμα Σημειώνουμε όλες τις αναφορές σε σελίδες Προσομοιώνουμε τον βέλτιστο αλγόριθμο Χρησιμοποιούμε τα αποτελέσματα ως μέτρο σύγκρισης Ένας αλγόριθμος 1% χειρότερος είναι αρκετά καλός Τα αποτελέσματα ισχύουν για τη συγκεκριμένη εκτέλεση 48

49 Αλγόριθμος NRU (1 από 3) Αλγόριθμος NRU Αξιοποίηση bit κατάστασης Α και Τ Συνήθως το υλικό ενημερώνει αυτόματα αυτά τα bit Προσομοίωση με λογισμικό Αρχικά όλες οι σελίδες σημειώνονται ως απούσες Όταν γίνει αναφορά σε σελίδα έχουμε σφάλμα σελίδας Το λειτουργικό σύστημα θέτει το bit Α Η σελίδα σημειώνεται ως ανάγνωσης μόνο Όταν γίνει εγγραφή στη σελίδα έχουμε σφάλμα σελίδας Το λειτουργικό σύστημα θέτει το bit Τ Η σελίδα σημειώνεται ως ανάγνωσης/εγγραφής 49

50 Αλγόριθμος NRU (2 από 3) Αλγόριθμος NRU Κατανομή σελίδων σε 4 κατηγορίες 0: δεν έγινε αναφορά, δεν τροποποιήθηκε 1: δεν έγινε αναφορά, τροποποιήθηκε 2: έγινε αναφορά, δεν τροποποιήθηκε 4: έγινε αναφορά, τροποποιήθηκε Ο NRU επιλέγει σελίδα από τη χαμηλότερη Προτεραιότητα σε παλιές σελίδες Δευτερευόντως σε «καθαρές» σελίδες 50

51 Αλγόριθμος NRU (3 από 3) Αλγόριθμος NRU Πώς μπορεί να υπάρχει η κατηγορία 1; 1: δεν έγινε αναφορά, τροποποιήθηκε Το λειτουργικό περιοδικά μηδενίζει τα bit Α Μας ενδιαφέρουν μόνο οι πρόσφατες αναφορές Τα bit Τ μηδενίζονται αν γραφτεί η σελίδα Αυτό μπορεί να γίνει στο παρασκήνιο Μία σελίδα μπορεί έτσι να γίνει καθαρή 51

52 Αλγόριθμος FIFO Αλγόριθμος FIFO Ταξινόμηση σελίδων με τη σειρά φόρτωσης Αρκεί μια γραμμική λίστα των σελίδων Κάθε νέα σελίδα μπαίνει στο τέλος Η παλιότερη σελίδα βρίσκεται στην αρχή Επιλέγεται η σελίδα που φορτώθηκε πρώτη Η σελίδα που είναι περισσότερη στη μνήμη Η σελίδα αυτή μπορεί να χρησιμοποιείται πολύ! 52

53 Αλγόριθμος δεύτερης ευκαιρίας Αλγόριθμος δεύτερης ευκαιρίας Αρχικά επιλέγει την παλιότερη σελίδα (όπως ο FIFO) Αν το bit A είναι 1, μηδενίζουμε και την βάζουμε στο τέλος Αλλιώς η σελίδα επιλέγεται για αντικατάσταση Ψάχνει για μια παλιά και αχρησιμοποίητη σελίδα Αν όλες έχουν χρησιμοποιηθεί, εκφυλίζεται σε FIFO 53

54 Αλγόριθμος του ρολογιού Αλγόριθμος του ρολογιού Δεύτερη ευκαιρία με κυκλική λίστα Σε κάθε σφάλμα ελέγχουμε τη σελίδα του δείκτη Αν έχει χρησιμοποιηθεί, μηδενίζουμε το bit Α και προχωράμε Αν όχι, η σελίδα επιλέγεται για αντικατάσταση 54

55 Αλγόριθμος LRU (1 από 2) Αλγόριθμος LRU Επιλογή της σελίδας που προσπελάστηκε παλιότερα Η ακριβής υλοποίηση έχει απαγορευτικό κόστος Απαιτεί συνεχή ενημέρωση μιας λίστας Προσεγγιστικές υλοποιήσεις του LRU Το υλικό έχει έναν μετρητή των 64 bit Ο μετρητής αυξάνεται κατά 1 μετά από κάθε εντολή Σε κάθε αναφορά στη μνήμη ο μετρητής αποθηκεύεται Στην καταχώριση στον πίνακα σελίδων Για λογικό κόστος, θα πρέπει να γίνεται στο TLB 55

56 Αλγόριθμος LRU (2 από 2) Προσεγγιστικές υλοποιήσεις του LRU Για n σελίδες έχουμε πίνακα n x n bit, αρχικά μηδενισμένο Αναφορά στην k: γραμμή k γίνεται 1 και στήλη k γίνεται 0 Η στήλη με τα πιο πολλά 1 χρησιμοποιήθηκε πιο παλιά 56

57 Προσομοίωση LRU (1 από 3) Προσομοίωση του αλγόριθμου LRU με λογισμικό Οι υπολογιστές δεν διαθέτουν υλικό για τον LRU Αλγόριθμος NFU Κάθε σελίδα έχει έναν μετρητή, αρχικά μηδενισμένο Σε κάθε διακοπή του ρολογιού σαρώνονται οι σελίδες Το bit Α προστίθεται στον μετρητή και μηδενίζεται Αρκετά καλή προσέγγιση του LRU Το πρόβλημα είναι ότι ο NFU δεν ξεχνάει τίποτα! Οι μετρητές δεν μειώνονται με το χρόνο 57

58 Προσομοίωση LRU (2 από 3) Γήρανση (aging) των μετρητών Οι μετρητές ολισθαίνουν δεξιά πριν από κάθε πρόσθεση Το bit Α προστίθεται στο αριστερό και όχι στο δεξί άκρο 58

59 Προσομοίωση LRU (3 από 3) Αλγόριθμος NFU Με την γήρανση οι μετρητές σταδιακά μηδενίζονται Η τελευταία τιμή έχει πολύ μεγαλύτερο βάρος Αποκλίσεις NFU από LRU Οι μετρητές είναι προσεγγιστικοί Έστω δύο σελίδες που χρησιμοποιήθηκαν στο ίδιο διάστημα Δεν φαίνεται ποια χρησιμοποιήθηκε πιο πρόσφατα Οι μετρητές έχουν περιορισμένη μνήμη Μετά από λίγη ώρα μηδενίζονται όλοι Συνήθως αυτά δεν έχουν μεγάλη σημασία 59

60 Σύνολο εργασίας (1 από 4) Σελιδοποίηση κατ απαίτηση Όταν ξεκινά η διεργασία, δεν έχει καμία σελίδα στη μνήμη Οι σελίδες φορτώνονται όταν συμβεί σφάλμα σελίδας Σύνολο εργασίας διεργασίας Οι σελίδες που χρησιμοποιεί την τρέχουσα περίοδο Περιορισμένο λόγω της τοπικότητας των αναφορών Σε κάθε φάση της μια διεργασία χρησιμοποιεί λίγες σελίδες Αρκεί το σύνολο εργασίας να είναι στη μνήμη Αλλιώς θα έχει συνεχώς σφάλματα σελίδες Σε αυτή την περίπτωση λέμε ότι η διαδικασία «αλωνίζει» 60

61 Σύνολο εργασίας (2 από 4) Οι διεργασίες πρέπει ενίοτε να πηγαίνουν στο δίσκο Ώστε να υπάρχει αρκετός χώρος για άλλες διεργασίες Τι θα γίνει όταν επανέλθει μια διεργασία στη μνήμη; Η απλούστερη λύση είναι να μην γίνει τίποτα Η διεργασία σταδιακά θα φορτώσει το σύνολο εργασίας της Αυτό όμως θα έχει ως κόστος πολλά σφάλματα σελίδων Σε μερικά ΛΣ παρακολουθείται το σύνολο εργασίας Προσελιδοποίηση: φόρτωση του συνόλου εργασίας Όταν επανέρχεται στη μνήμη η διεργασία Αποφυγή των υπερβολικών σφαλμάτων σελίδων 61

62 Σύνολο εργασίας (3 από 4) Μοντελοποίηση συνόλου εργασίας Ορίζουμε το σύνολο εργασίας τη στιγμή t ως w(k,t) Περιλαμβάνει τις σελίδες των τελευταίων k αναφορών Μη φθίνουσα συνάρτηση του k, τείνει προς μέγεθος διεργασίας Μικρότερο αν δεν χρησιμοποιούνται όλες οι σελίδες Η καμπύλη αυξάνεται απότομα και μετά ομαλοποιείται Οι διεργασίες αναφέρονται σε λίγες σελίδες κάθε στιγμή Οι σελίδες αλλάζουν αργά με την πρόοδο του προγράμματος 62

63 Σύνολο εργασίας (4 από 4) Συμπέρασμα: το σύνολο εργασίας βοηθάει Προσελιδοποίηση σελίδων που είναι στο σύνολο εργασίας Επιλογή σελίδων εκτός συνόλου για αντικατάσταση Παρακολούθηση συνόλου εργασίας Παρακολούθηση των τελευταίων k αναφορών Η ακριβής παρακολούθηση έχει απαγορευτικό κόστος Συνήθως χρησιμοποιούμε κάποια προσέγγιση Παράδειγμα: αναφορές στα τελευταία 100 ms Μιλάμε πάντα για εικονικό και όχι πραγματικό χρόνο Δηλαδή τον χρόνο πραγματικής εκτέλεσης της διεργασίας 63

64 Αλγόριθμος συνόλου εργασίας (1 από 2) Αλγόριθμος αντικατάστασης συνόλου εργασίας Δύο πεδία: bit A και τελευταία προσπέλαση Aν Α == 1 σημειώνουμε τον τρέχοντα εικονικό χρόνο Αν A == 0 τότε δεν έχει γίνει αναφορά στο τελευταίο διάστημα 64

65 Αλγόριθμος συνόλου εργασίας (2 από 2) Αλγόριθμος αντικατάστασης συνόλου εργασίας Υπολογίζουμε την ηλικία της σελίδας Τρέχων χρόνος μείον χρόνος τελευταίας προσπέλασης Αν η ηλικία είναι πάνω από t τότε αντικαθίσταται Συνεχίζουμε μέχρι να αντικαταστήσουμε όλες τις σελίδες Αν η ηλικία είναι κάτω από t τότε Σημειώνουμε την παλιότερη τέτοια σελίδα Αν δεν αντικατασταθεί άλλη, τότε αντικαθίσταται αυτή 65

66 Αλγόριθμος WSClock (1 από 3) Αλγόριθμος WSClock Οι σελίδες οργανώνονται σε κυκλική λίστα Σε κάθε σφάλμα ξεκινάμε από εκεί που είχαμε μείνει Αν η σελίδα έχει Α == 1 μηδενίζουμε και προχωράμε Αν έχει Α == 0 τότε συγκρίνουμε την ηλικία με το t Αν είναι μεγαλύτερη από t τότε η σελίδα επιλέγεται Αν είναι καθαρή, επιλέγεται και αντικαθίσταται Αν δεν είναι καθαρή, προγραμματίζεται για εγγραφή Προχωράμε στην επόμενη αφού η εγγραφή θα αργήσει 66

67 Αλγόριθμος WSClock (2 από 3) Αλγόριθμος WSClock Αν σταλθούν n σελίδες στο δίσκο, σταματάμε Δεν θέλουμε να καλείται συνέχεια ο αλγόριθμος Αλλά δεν θέλουμε και να αδειάσουμε τη μνήμη Αν δεν έχει βρεθεί σελίδα σε έναν κύκλο Αν έχουν σταλθεί σελίδες στο δίσκο συνεχίζουμε Τελικά κάποια θα αδειάσει και θα αντικατασταθεί Αν δεν έχουν σταλθεί σελίδες στο δίσκο Επιλέγουμε μία καθαρή σελίδα στην τύχη! 67

68 Αλγόριθμος WSClock (3 από 3) Παράδειγμα αλγόριθμου WSClock 68

69 Σύνοψη αλγορίθμων Κόστος υλοποίησης και αποτελεσματικότητα Ορισμένοι απαιτούν ειδικό υλικό (π.χ. LRU) Οι αλγόριθμοι γήρανσης και WSClock είναι πιο πρακτικοί Προσεγγίσεις LRU και συνόλου εργασίας, αντίστοιχα 69

70 Θέματα σχεδιασμού Μάθημα: Λειτουργικά Συστήματα, Ενότητα # 3: Διαχείριση Μνήμης Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

71 Τοπικές και καθολικές πολιτικές (1 από 3) Πώς πρέπει να κατανέμεται η μνήμη στις διεργασίες; Τοπικά: αντικατάσταση σελίδων της ίδιας διεργασίας Καθολικά: αντικατάσταση οποιωνδήποτε σελίδων Η καθολική πολιτική κατανέμει τη μνήμη δυναμικά 71

72 Τοπικές και καθολικές πολιτικές (2 από 3) Γενικά οι καθολικές πολιτικές λειτουργούν καλύτερα Έστω ότι η διεργασία αλλάζει μέγεθος συνόλου εργασίας Αν μεγαλώσει, η τοπική θα οδηγήσει σε αλώνισμα Αν μικρύνει, η τοπική πολιτική θα σπαταλά μνήμη Πώς όμως θα κατανείμουμε τη μνήμη; Καταμερισμός πλαισίων στα ίσα Η κατανομή αλλάζει με το πλήθος των διεργασιών Καταμερισμός πλαισίων αναλόγως μεγέθους Πρέπει να δίνεται όμως ένας ελάχιστος αριθμός σε όλες Αρχική κατανομή και μετά δυναμική προσαρμογή 72

73 Τοπικές και καθολικές πολιτικές (3 από 3) Αλγόριθμος Συχνότητας Σφαλμάτων Σελίδας (PFF) Συνήθως το PFF μειώνεται με πρόσθετη μνήμη Παρακολούθηση συχνότητας σφαλμάτων ανά διεργασία Μπορεί να χρησιμοποιεί σταθμισμένους μέσους Αν ανέβει πολύ θέλουμε περισσότερη μνήμη Αν πέσει πολύ μπορούμε να παραχωρήσουμε μνήμη 73

74 Έλεγχος φορτίου Αν δεν χωράνε όλα τα σύνολα εργασίας; Τότε έχουμε αλώνισμα (συνεχή αλλαγή σελίδων) Ο PFF δείχνει ότι όλες οι διεργασίες θέλουν μνήμη Πρέπει να εξαλειφθούν μερικές διεργασίες Μεταφέρονται στο δίσκο οι σελίδες τους Χρονοπρογραμματισμός σε δύο επίπεδα Έλεγχος φορτίου με μεταφορά στο δίσκο Καταμερισμός μνήμης με σελιδοποίηση Πρέπει να έχουμε αρκετές σελίδες στη μνήμη 74

75 Μέγεθος σελίδας (1 από 2) Το υλικό παρέχει κάποιο βασικό μέγεθος σελίδας Το λογισμικό μπορεί να λειτουργεί με πολλαπλάσια Το μέγεθος σελίδας αποτελεί συμβιβασμό Μεγάλες σελίδες: αυξάνουν την εσωτερική κατάτμηση Ένα τμήμα δεν θα χωράει ακριβώς σε σελίδες Η τελευταία σελίδα θα είναι κατά μέσο όρο μισογεμάτη Μικρές σελίδες: απαιτούν μεγάλο πίνακα σελίδων Περισσότερος χρόνος κατά την αλλαγή διεργασίας Το κόστος μεταφοράς ανά σελίδα είναι σταθερό Συμφέρει να μεταφέρουμε λίγες μεγάλες σελίδες 75

76 Μέγεθος σελίδας (2 από 2) Μοντελοποίηση της επιβάρυνσης μ byte ανά διεργασία σ byte ανά σελίδα κ byte ανά καταχώριση στον πίνακα σελίδων Κάθε σελίδα απαιτεί μ/σ σελίδες Άρα ο πίνακας σελίδων έχει μέγεθος μκ/σ Η εσωτερική κατάτμηση είναι σ/2 Η επιβάρυνση ανά διεργασία είναι μκ/σ+σ/2 Η βέλτιστη τιμή του σ είναι ρίζα του 2μκ Παράδειγμα: μ = 1 MB και κ = 8 byte, βέλτιστο σ = 4 KB 76

77 Εντολές και δεδομένα Διαχωρισμός χώρων εντολών και δεδομένων Συνήθως δεδομένα και εντολές είναι σε ενιαίο χώρο Σε ορισμένα συστήματα διαχωρίζονται Οι εντολές αναφέρονται σε άλλη μνήμη από τα δεδομένα Δύο ανεξάρτητες εικονικές μνήμες Χρησιμοποιήθηκε στο PDP-11 για μεγάλα προγράμματα 77

78 Κοινόχρηστες σελίδες (1 από 3) Κοινόχρηστες σελίδες Το πρόγραμμα μπορεί να εκτελείται σε πολλές διεργασίες Θα μπορούσαν οι σχετικές σελίδες να καταμερίζονται Επιτρέπεται στις σελίδες ανάγνωσης μόνο Στην πράξη, είναι οι σελίδες κώδικα Υλοποίηση με χωριστούς χώρους διευθύνσεων Πίνακας σελίδων δεδομένων και κώδικα ανά διεργασία Ο πίνακας σελίδων κώδικα μπορεί να καταμερίζεται Λίγο πιο περίπλοκη με ενιαίο χώρο διευθύνσεων Τι γίνεται αν μία από τις διεργασίες φύγει από τη μνήμη; 78

79 Κοινόχρηστες σελίδες (2 από 3) Παράδειγμα καταμερισμού σελίδων Δύο διεργασίες έχουν τον ίδιο κώδικα Τα δεδομένα όμως διαφοροποιούνται 79

80 Κοινόχρηστες σελίδες (3 από 3) Αντιγραφή κατά την εγγραφή UNIX: μετά το fork() οι διεργασίες μοιράζονται δεδομένα Κάθε διεργασία έχει άλλο πίνακα αλλά τις ίδιες σελίδες Οι σελίδες όμως σημειώνονται ως μόνο ανάγνωσης Όταν τροποποιηθεί μία σελίδα έχουμε παγίδα Το λειτουργικό δημιουργεί αντίγραφο της σελίδας Κάθε διεργασία διαθέτει τώρα το δικό της αντίγραφο Τα αντίγραφα γίνονται ανάγνωσης/εγγραφής Όποιες σελίδες δεν τροποποιηθούν δεν θα αντιγραφούν 80

81 Κοινόχρηστες βιβλιοθήκες (1 από 3) Κοινόχρηστες βιβλιοθήκες Οι διεργασίες χρησιμοποιούν μεγάλες βιβλιοθήκες Για παράδειγμα, τις βιβλιοθήκες γραφικών του GUI Δύσκολο να τις μοιραστούμε με στατική σύνδεση Κάθε διεργασία έχει διαφορετικά τμήμα σε κάθε σημείο Συμφέρει να έχουμε δυναμική σύνδεση Windows: Dynamic Link Libraries (DLL) Το πρόγραμμα συνδέεται με ρουτίνες στελέχους Αυτές δεσμεύονται με τη βιβλιοθήκη στο χρόνο εκτέλεσης 81

82 Κοινόχρηστες βιβλιοθήκες (2 από 3) Λειτουργία DLL στα Windows Οι DLL φορτώνονται ολόκληρες στη μνήμη Δεν φορτώνονται μόνο οι συναρτήσεις που χρησιμοποιούνται Στην πραγματικότητα σελιδοποιούνται και αυτές Φόρτωση είτε με το πρόγραμμα είτε με την πρώτη κλήση Όλα τα προγράμματα έχουν πρόσβαση στις DLL Τα DLL επιτρέπουν τη διόρθωση σφαλμάτων Έστω ότι βρέθηκε κάποιο πρόγραμμα ασφάλειας σε ένα DLL Μπορεί να αντικατασταθεί με νέα έκδοση Οι διεργασίες βλέπουν τις ίδιες ακριβώς κλήσεις 82

83 Κοινόχρηστες βιβλιοθήκες (3 από 3) Κοινόχρηστες βιβλιοθήκες Κάθε διεργασία φορτώνει τη βιβλιοθήκη αλλού Η βιβλιοθήκη πρέπει να είναι ανεξάρτητη θέσης Να εκτελείται οπουδήποτε στη μνήμη Άρα να χρησιμοποιεί μόνο σχετικά άλματα και αναφορές 83

84 Χαρτογραφημένα αρχεία Χαρτογραφημένα αρχεία στη μνήμη Παρέχονται σε ορισμένα συστήματα Αρχείο που φαίνεται να έχει φορτωθεί στη μνήμη Χρήση με λειτουργίες μνήμης αντί εισόδου/εξόδου Το αρχείο μπορεί να σελιδοποιείται όπως όλη η μνήμη Έτσι μπορούν να φορτώνονται και τα DLL Επιτρέπει και επικοινωνία διεργασιών Πολλές διεργασίες χαρτογραφούν το ίδιο αρχείο 84

85 Πολιτική καθαρισμού (1 από 2) Πολιτική καθαρισμού Οι τροποποιημένες σελίδες δεν είναι διαθέσιμες Πρέπει να περιμένουμε να γραφτούν στο δίσκο Καθυστέρηση όταν θέλουμε να φορτώσουμε νέες σελίδες Δαίμονας σελιδοποίησης Φροντίζει να υπάρχουν πάντα διαθέσιμες σελίδες Ο δαίμονας ξυπνάει περιοδικά Αν έχουμε λίγες διαθέσιμες επιλέγει μερικές για αφαίρεση Αν είναι τροποποιημένες τις στέλνει και για εγγραφή 85

86 Πολιτική καθαρισμού (2 από 2) Πολιτική καθαρισμού Ο δαίμονας δεν διώχνει τις σελίδες που επιλέγει Αν ζητηθούν ξανά, είναι ακόμα διαθέσιμες Τώρα όμως θα είναι και καθαρές Άρα μπορούν να χρησιμοποιηθούν άμεσα Πολιτική ρολογιού με δύο δείκτες Ο εμπρός δείκτης επιλέγει σελίδες για εγγραφή Φροντίζει να υπάρχουν διαθέσιμες σελίδες αν χρειαστούν Ο πίσω δείκτης επιλέγει σελίδες προς αντικατάσταση Χρησιμοποιεί τις διαθέσιμες σελίδες για φόρτωση νέων 86

87 Διασύνδεση εικονικής μνήμης Η κλασική διασύνδεση είναι αυτή που περιγράψαμε Μπορεί όμως να επιτρέπονται και αποκλίσεις Παράδειγμα: κοινή μνήμη Απόδοση ονόματος σε ορισμένες περιοχές Χρήση ονόματος για σύνδεση με διαφορετικές διεργασίες Η κοινή μνήμη επιτρέπει γρήγορη επικοινωνία διεργασιών Παράδειγμα: κατανεμημένη κοινόχρηστη μνήμη Κοινός χώρος διευθύνσεων σε χωριστές μηχανές Σφάλμα σελίδας όταν μια μηχανή δεν έχει τη σελίδα Οι σελίδες στέλνονται από μηχάνημα σε μηχάνημα 87

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

89 Ρόλος του ΛΣ (1 από 2) Λειτουργικό σύστημα και σελιδοποίηση Δημιουργία νέας διεργασίας Εκτίμηση μεγέθους προγράμματος και δεδομένων Δημιουργία και αρχικοποίηση πίνακα σελίδων Δέσμευση χώρου στην περιοχή εναλλαγής Ενημέρωση πίνακα διεργασιών Χρονοπρογραμματισμός διεργασίας Καθαρισμός MMU και TLB Αλλαγή πίνακα σελίδων Προαιρετικά φόρτωση ορισμένων σελίδων 89

90 Ρόλος του ΛΣ (2 από 2) Λειτουργικό σύστημα και σελιδοποίηση Σφάλμα σελίδας Εντοπισμός ζητούμενης σελίδας στο δίσκο Φόρτωση σελίδας σε διαθέσιμο πλαίσιο Επαναφορά μετρητή προγράμματος και επανεκτέλεση Τερματισμός διεργασίας Αποδέσμευση πίνακα σελίδων Αποδέσμευση χώρου στην περιοχή εναλλαγής Αποδέσμευση μη καταμεριζόμενων σελίδων 90

91 Χειρισμός σφαλμάτων σελίδας (1 από 3) Χειρισμός σφαλμάτων σελίδας Το υλικό προκαλεί παγίδα στον πυρήνα Ο μετρητής προγράμματος αποθηκεύεται στη στοίβα Εκτέλεση βασικού χειριστή διακοπής Αποθήκευση υπόλοιπων καταχωρητών στη στοίβα Κλήση του χειριστή σφαλμάτων σελίδας Χειριστής σφαλμάτων σελίδας Καθορισμός ζητούμενης σελίδας Μπορεί να απαιτεί ανάλυση της εντολής που διακόπηκε 91

92 Χειρισμός σφαλμάτων σελίδας (2 από 3) Χειρισμός σφαλμάτων σελίδας Έλεγχος εγκυρότητας και πρόσβασης Αν υπάρχει πρόβλημα στέλνεται μήνυμα στη διεργασία Επιλέγεται ένα ελεύθερο πλαίσιο ή εκτελείται η αντικατάσταση Καθαρισμός πλαισίου σελίδας (αν είναι «βρώμικο») Χρονοπρογραμματίζεται η εγγραφή της σελίδας στο δίσκο Η διεργασία αναστέλλεται Φόρτωση της σελίδας στη μνήμη Χρονοπρογραμματίζεται η ανάγνωση της σελίδας από το δίσκο Η διεργασία αναστέλλεται (αν δεν είναι ήδη σε αναστολή) 92

93 Χειρισμός σφαλμάτων σελίδας (3 από 3) Χειρισμός σφαλμάτων σελίδας Ενημέρωση πίνακα σελίδων Μόλις ολοκληρωθεί η μεταφορά της σελίδας Επαναφορά μετρητή στην εντολή που διακόπηκε Χρονοπρογραμματισμός της διεργασίας Θα ξεκινήσει με την εντολή που διακόπηκε Επαναφορά των καταχωρητών Στην κατάσταση που ήταν πριν τη διακοπή 93

94 Αντίγραφα ασφαλείας εντολών (1 από 2) Αντίγραφα ασφαλείας εντολών Η επανεκτέλεση της εντολής δεν είναι πάντα απλή Παράδειγμα: MOVE.L #6(A1),2(A0) [Motorola 68K] Εντολή 6 byte με 2 σχετικές διευθύνσεις Η αιτία του σφάλματος σελίδας δεν είναι προφανής Το σφάλμα μπορεί να συμβεί κατά τις τρεις προσκομίσεις Επιπλέον μπορεί να συμβεί στις δύο αναφορές στη μνήμη 94

95 Αντίγραφα ασφαλείας εντολών (2 από 2) Χρήση ειδικών καταχωρητών στον επεξεργαστή Καταχωρητής αρχικής διεύθυνσης τρέχουσας εντολής Χρήσιμος αν έχουμε εντολές με διάφορα μεγέθη Καταχωρητής αλλαγών σε καταχωρητές Βοηθούν στον εντοπισμό της αιτίας του σφάλματος Χρησιμοποιούνται για αναίρεση όλων των αλλαγών Η εντολή μπορεί να ξεκινήσει από την αρχή Με τις ίδιες συνθήκες όπως στην αρχική εκτέλεση 95

96 Κλείδωμα σελίδων στη μνήμη Κλείδωμα σελίδων στη μνήμη Έστω ότι μια διεργασία ξεκινά ανάγνωση του δίσκου Η διεργασία μπλοκάρεται περιμένοντας τα δεδομένα Τι θα γίνει αν η σελίδα δεδομένων αντικατασταθεί; Αν χρησιμοποιούμε DMA θα γράψουμε στο λάθος σημείο! Οι σελίδες για είσοδο-έξοδο κλειδώνονται Καρφίτσωμα (pinning) σελίδων στη μνήμη Εναλλακτικά είσοδος-έξοδος μόνο μέσω πυρήνα 96

97 Δευτερεύουσα μνήμη (1 από 4) Διαμέριση ή δίσκος εναλλαγής (swap) Ο δίσκος έχει μεγαλύτερη ταχύτητα προσπέλασης Η περιοχή εναλλαγής δεν περιέχει σύστημα αρχείων Το ΛΣ αναφέρεται απευθείας στα μπλοκ στο δίσκο Κατά την εκκίνηση η περιοχή είναι κενή Σε κάθε διεργασία εκχωρείται μέρος της περιοχής Συνεχόμενη περιοχή ανάλογα με μέγεθος διεργασίας Απαιτεί διαχείριση ελεύθερων περιοχών 97

98 Δευτερεύουσα μνήμη (2 από 4) Διαμέριση ή δίσκος εναλλαγής (swap) Για κάθε διεργασία θυμόμαστε πού ξεκινά η περιοχή της Αποθήκευση στην καταχώριση του πίνακα διεργασιών Εύκολη αντιστοίχιση σελίδων σε μπλοκ του δίσκου Αρχικοποίηση της περιοχής ανταλλαγής Είτε αντιγραφή της εικόνας στην περιοχή πρώτα Είτε αντιγραφή της εικόνας στη μνήμη πρώτα Τι γίνεται αν η διεργασία μεγαλώσει; Δέσμευση ξεχωριστών περιοχών για κώδικα και δεδομένα Δέσμευση πολλών τμημάτων για τα δεδομένα 98

99 Δευτερεύουσα μνήμη (3 από 4) Εναλλακτικά, δυναμική δέσμευση χώρου Χρησιμοποιούμε χώρο μόνο όταν μια σελίδα εκτοπίζεται Απαιτεί πίνακα με διευθύνσεις σελίδων στη μνήμη Πιο οικονομική και ευέλικτη από τη σταθερή περιοχή Απαιτεί διαχείριση του πίνακα διευθύνσεων στο δίσκο 99

100 Δευτερεύουσα μνήμη (4 από 4) Χρήση αρχείων ως περιοχών ανταλλαγής Χρησιμοποιούνται στα Windows Επιτρέπονται και διαμερίσεις Πιο ευέλικτη διαχείριση χώρου Πιο αργή αντιστοίχιση Δεν παρακάμπτεται το σύστημα αρχείων Χρήση αρχείου προγράμματος για τον κώδικα Βρίσκεται ήδη αποθηκευμένο στο δίσκο Αυτό επιτρέπεται και με διαμερίσεις 100

101 Πολιτική και μηχανισμός (1 από 3) Διαχωρισμός πολιτικής και μηχανισμού Εκτέλεση διαχειριστή μνήμης σε επίπεδο χρήστη Ο πυρήνας παρέχει το μηχανισμό Ο διαχειριστής παρέχει την πολιτική Χρησιμοποιήθηκε στο σύστημα Mach Χειριστής χαμηλού επιπέδου της MMU (πυρήνας) Γράφεται σε assembly ανάλογα με τη μηχανή Χειριστής σφαλμάτων σελίδας (πυρήνας) Γράφεται σε C ανάλογα με το λειτουργικό σύστημα 101

102 Πολιτική και μηχανισμός (2 από 3) Εξωτερικός σελιδοποιητής (επίπεδο χρήστη) Δημιουργεί τον πίνακα σελίδων και δεσμεύει χώρο Ενημερώνεται από τον χειριστή σφαλμάτων σελίδας Διαβάζει τις σελίδες από το δίσκο στη μνήμη του Ενημερώνει χειριστή MMU όταν ολοκληρωθεί η φόρτωση Ο χειριστής MMU απεικονίζει τις σελίδες στην διεργασία 102

103 Πολιτική και μηχανισμός (3 από 3) Πού βρίσκεται ο αλγόριθμος αντικατάστασης; Στον εξωτερικό σελιδοποιητή Πρέπει να του μεταφέρονται τα bit Α και Τ με κάποιο τρόπο Στον πυρήνα Επιλέγει τη σελίδα προς αντικατάσταση Απεικονίζει τη σελίδα στο χώρο του σελιδοποιητή Ο σελιδοποιητής γράφει τη σελίδα στο δίσκο (αν χρειάζεται) Ο σελιδοποιητής διαβάζει τη ζητούμενη σελίδα Ο εξωτερικός σελιδοποιητής παρέχει μεγάλη ευελιξία Μπορεί να εκτελεί αλγόριθμους ανάλογα με τη διεργασία 103

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

105 Τμηματοποίηση (1 από 4) Πολλοί εικονικοί χώροι διευθύνσεων Παράδειγμα: μεταγλωττιστής Περιέχει πολλούς δυναμικούς πίνακες Κάποιοι πίνακες μπορεί να γεμίσουν ενώ άλλοι όχι 105

106 Τμηματοποίηση (2 από 4) Τμηματοποίηση (segmentation) Κάθε διεργασία αποτελείται από τμήματα (segments) Κάθε τμήμα είναι μια γραμμική ακολουθία διευθύνσεων Τα τμήματα έχουν διαφορετικό και μεταβλητό μέγεθος Λογικός καταμερισμός της μνήμης σε τμήματα 106

107 Τμηματοποίηση (3 από 4) Πλεονεκτήματα τμηματοποίησης Απλούστερη σύνδεση διαδικασιών Κάθε διαδικασία είναι διαφορετικό τμήμα Δεν χρειάζεται επανατοποθέτηση κώδικα κατά τη σύνδεση Διευκόλυνση κοινής χρήσης βιβλιοθηκών Κάθε βιβλιοθήκη είναι διαφορετικό τμήμα Όλες οι διεργασίες τη βλέπουν με τον ίδιο τρόπο Προστασία μνήμης σε επίπεδο τμήματος Τα τμήματα είναι λογικές οντότητες (όχι όπως οι σελίδες) Μπορούν να προστατεύονται ανάλογα με τη φύση τους 107

108 Τμηματοποίηση (4 από 4) Σύγκριση σελιδοποίησης και τμηματοποίησης 108

109 Υλοποίηση τμηματοποίησης Υλοποίηση αμιγούς τμηματοποίησης Τα τμήματα έχουν μεταβλητό μέγεθος Η φόρτωση / αφαίρεση τμημάτων αφήνει κενά στη μνήμη Εξωτερική κατάτμηση: κενά ανάμεσα στα τμήματα μνήμης Ίδια προβλήματα όπως με τους καταχωρητές βάσης 109

110 Υλοποίηση: MULTICS (1 από 6) Τμηματοποίηση με σελιδοποίηση: MULTICS Κάθε τμήμα μπορεί να σελιδοποιείται Φόρτωση μέρους μεγάλων τμημάτων στη μνήμη Απλούστευση της διαχείρισης μνήμης με τις σελίδες Το MULTICS σχεδιάστηκε στα Honeywell τμήματα με 2 16 λέξεις των 36 bit ανά διεργασία Κάθε διεργασία διαθέτει πίνακα τμημάτων Ένας περιγραφέας (descriptor) ανά τμήμα Ο πίνακας είναι κι αυτός τμήμα που σελιδοποιείται 110

111 Υλοποίηση: MULTICS (2 από 6) Τμηματοποίηση με σελιδοποίηση: MULTICS Ο περιγραφέας δείχνει στον πίνακα σελίδων τμήματος Ο δείκτης έχει μέγεθος 18 bit ενώ οι διευθύνσεις 24 bit Στο τέλος του δείκτη προστίθεται το Ουσιαστικά οι σελίδες ευθυγραμμίζονται ανά 64 byte 111

112 Υλοποίηση: MULTICS (3 από 6) Τμηματοποίηση με σελιδοποίηση: MULTICS Μέγεθος σελίδας: 1024 ή 64 λέξεις (μικρά τμήματα) Σελιδοποίηση ή όχι (ορισμένα τμήματα του MULTICS) Bit προστασίας τμήματος Η διεύθυνση στη δευτερεύουσα μνήμη δεν περιέχεται Βρίσκεται σε πίνακα του χειριστή σφαλμάτων τμήματος 112

113 Υλοποίηση: MULTICS (4 από 6) Τμηματοποίηση με σελιδοποίηση: MULTICS Οι διευθύνσεις αποτελούνται από δύο μέρη Η απόσταση χωρίζεται και αυτή σε δύο μέρη Μετάφραση εικονικών σε φυσικές διευθύνσεις Εντοπισμός περιγραφέα τμήματος από τον αριθμό του Έλεγχος πρόσβασης και παρουσίας τμήματος στη μνήμη Έλεγχος αν η σελίδα βρίσκεται στη μνήμη Πρόσθεση απόστασης στην αρχή της σελίδας 113

114 Υλοποίηση: MULTICS (5 από 6) Τμηματοποίηση με σελιδοποίηση: MULTICS Και ο πίνακας τμημάτων είναι σελιδοποιημένος Ένας καταχωρητής δείχνει στην αρχή του Στη διεργασία μπορούν να συμβούν διάφορα σφάλματα Προστασίας, τμήματος ή σελίδας 114

115 Υλοποίηση: MULTICS (6 από 6) Τμηματοποίηση με σελιδοποίηση: MULTICS Χρήση TLB 16 λέξεων για επιτάχυνση των μεταφράσεων Αν βρεθεί το τμήμα/σελίδα πάμε απευθείας στη μνήμη Αν δεν βρεθεί η καταχώριση, καταφεύγουμε στους πίνακες Η καταχώριση φορτώνεται στο TLB στη θέση της παλιότερης Πεδίο ηλικίας που δείχνει πόσο παλιά είναι κάθε καταχώριση 115

116 Υλοποίηση: Pentium (1 από 8) Τμηματοποίηση με σελιδοποίηση: Intel Pentium Λιγότερα τμήματα (2 14 ), μεγαλύτερο μέγεθος (2 20 ή 2 32 ) Κάθε διεργασία βλέπει δύο πίνακες τμημάτων Πίνακας τοπικών περιγραφέων (LDT) ανά διεργασία Περιέχει τον κώδικα και τα δεδομένα της διεργασίας Πίνακας καθολικών περιγραφέων (GDT) για όλες τις διεργασίες Περιέχει το λειτουργικό και τη μνήμη του συστήματος Ο Pentium διαθέτει έξι καταχωρητές τμημάτων CS: τμήμα κώδικα, DS: τμήμα δεδομένων, SS: τμήμα στοίβας Φορτώνονται με επιλογείς (selectors) τμημάτων των 16 bit 116

117 Υλοποίηση: Pentium (2 από 8) Τμηματοποίηση με σελιδοποίηση: Intel Pentium Περιεχόμενα επιλογέα τμήματος Τοπικό ή καθολικό τμήμα (δηλαδή, LDT ή GDT) Θέση στον πίνακα (13 bit, άρα 2 13 τμήματα ανά πίνακα) Μαζί με τον επιλογέα φορτώνεται και ο περιγραφέας Αποθηκεύεται σε έναν εσωτερικό καταχωρητή Οι περιγραφείς έχουν μήκος 8 byte ο καθένας Αντιγράφεται από τον LDT ή τον GDT Χρήση του επιλογέα με μηδενισμένα τα 3 τελευταία bit 117

118 Υλοποίηση: Pentium (3 από 8) Τμηματοποίηση με σελιδοποίηση: Intel Pentium Ο περιγραφέας είναι περίεργος για λόγους συμβατότητας Τα τμήματα μπορεί να αρχίζουν οπουδήποτε στη μνήμη Το όριο ερμηνεύεται διαφορετικά ανάλογα με το πεδίο G Το πεδίο P δείχνει αν το τμήμα είναι στο μνήμη Το πεδίο S δείχνει αν το τμήμα ανήκει στο σύστημα Το πεδίο DPL περιέχει το πεδίο προστασίας τμήματος 118

119 Υλοποίηση: Pentium (4 από 8) Μετάφραση λογικής διεύθυνσης σε φυσική Επιλογή περιγραφέα με βάση τον καταχωρητή τμήματος Σφάλμα τμήματος αν το τμήμα δεν είναι στη μνήμη Σύγκριση απόστασης με όριο τμήματος Πρόσθεση απόστασης στη βάση του τμήματος Προκύπτει μια γραμμική (linear) διεύθυνση των 32 bit Μπορεί να είναι σελιδοποιημένη ή όχι 119

120 Υλοποίηση: Pentium (5 από 8) Τμηματοποίηση με σελιδοποίηση: Intel Pentium Πόσο μεγάλα είναι τα τμήματα; Εξαρτάται από το πεδίο G του περιγραφέα Είτε 2 20 byte (όπως στον 8086/8088) είτε 2 20 σελίδες Οι πίνακες σελίδων είναι δύο επιπέδων Κάθε διεργασία έχει έναν κατάλογο σελίδων Κάθε θέση του δείχνει σε πίνακα δεύτερου επιπέδου Κάθε πίνακας είναι μία σελίδα με 2 10 καταχωρήσεις των 32 bit Τα 20 bit κάθε καταχώρισης δείχνουν ένα πλαίσιο σελίδας Τα υπόλοιπα bit δείχνουν την κατάσταση της σελίδας 120

121 Υλοποίηση: Pentium (6 από 8) Οι γραμμικές διευθύνσεις χωρίζονται σε τρία μέρη Δείκτης στον κατάλογο σελίδων(10 bit) Δείκτης στον πίνακα σελίδων δεύτερου επιπέδου (10 bit) Απόσταση μέσα στη σελίδα (12 bit) 121

122 Υλοποίηση: Pentium (7 από 8) Τμηματοποίηση με σελιδοποίηση: Intel Pentium Χρήση TLB για παράκαμψη των πινάκων σελίδων Η τμηματοποίηση μπορεί να απενεργοποιηθεί Όλοι οι καταχωρητές τμημάτων ορίζονται ίδιοι Μηχανισμός προστασίας του Pentium Τέσσερα επίπεδα προνομίων, το 0 είναι πιο προνομιούχο Κάθε τμήμα μνήμης ανήκει σε ένα επίπεδο Σύμφωνα με επιλογέα και περιγραφέα Η εκτελούμενη διεργασία ανήκει και αυτή σε ένα επίπεδο Ειδικό πεδίο στον καταχωρητή κατάστασης 122

123 Υλοποίηση: Pentium (8 από 8) Μηχανισμός προστασίας του Pentium Ελεγχόμενη πρόσβαση σε κώδικα χαμηλότερου επιπέδου Οι εντολές κλήσης αναφέρονται σε επιλογέα/περιγραφέα Επιτρέπεται να μεταβούμε μόνο σε πύλες κλήσης (call gates) Οι πύλες κλήσης επιλέγονται από το κατώτερο επίπεδο Ίδιος μηχανισμός και για παγίδες και διακοπές 123

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

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

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση απαιτεί ιδιαίτερη

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

Διαχείριση Κύριας Μνήμης

Διαχείριση Κύριας Μνήμης Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Διαχείριση Κύριας Μνήμης Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2016-2017 Διαχείριση

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

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ρχιτεκτονική Υπολογιστών 2016-17 Εικονική Μνήμη (και ο ρόλος της στην ιεραρχία μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Δευτερεύουσα μνήμη

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 8 «Ιδεατή Μνήμη» Διδάσκων: Δ. Λιαροκαπης Διαφάνειες: Π. Χατζηδούκας Ιδεατή Μνήμη Οργάνωση. Εισαγωγή. Ιδεατές και πραγματικές διευθύνσεις. Λογική οργάνωση. Τμηματοποίηση

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

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

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

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

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 9 : Ιδεατή Μνήμη 1/2 Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

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

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2011-12 Εικονική (και ο ρόλος της στην ιεραρχία μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Ιεραρχία η νέα τάση: [2011]

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

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

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

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

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

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

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Επ. Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκων: Επ. Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση απαιτεί ιδιαίτερη

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

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

3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση χώρου διευθύνσεων ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ MHXANIKOI Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΙΠΕ Ο ΜΗΧΑΝΗΣ ΛΕΙΤΟΥΡΓΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ Γ. Τσιατούχας 6 ο Κεφάλαιο 1. Επίπεδο OSM 2. Εικονική μνήμη ιάρθρωση 3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση

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

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

Εισαγωγή στα Λειτουργικά Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 6: Διαχείριση Μνήμης Ι Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σεάδειες χρήσης Creative Commons.

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

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

Μάθημα 8: Διαχείριση Μνήμης Μάθημα 8: Διαχείριση Μνήμης 8.1 Κύρια και δευτερεύουσα μνήμη Κάθε μονάδα ενός υπολογιστή που χρησιμεύει για τη μόνιμη ή προσωρινή αποθήκευση δεδομένων ανήκει στην μνήμη (memory) του υπολογιστή. Οι μνήμες

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Διδάσκοντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη Λειτουργικά Συστήματα ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκοντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση

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

Εικονική Μνήμη (1/2)

Εικονική Μνήμη (1/2) Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Εικονική Μνήμη (1/2) Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2016-2017 Εικονική Μνήμη

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

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 7 «Διαχείριση Μνήμης» Διδάσκων: Δ. Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Κύρια Μνήμη 1. Εισαγωγή 2. Βασική διαχείριση μνήμης 3. Μνήμη και πολυπρογραμματισμός 4. Τμηματοποίηση

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

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Μνήμης Βασίλης Σακκάς 6/12/2013 1 Διαχείριση Μνήμης 1 Το τμήμα του Λ/Σ που διαχειρίζεται τη μνήμη λέγεται Διαχειριστής Μνήμης (Memory manager). Καθήκον του είναι

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

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

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

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Διδάσκοντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη Λειτουργικά Συστήματα ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκοντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) 1 ΜΕΓΕΘΟΣ ΣΕΛΙΔΑΣ To μέγεθος σελίδας είναι μία παράμετρος που μπορεί

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

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 6: Διαχείριση Μνήμης Ι Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 8 : Διαχείριση Μνήμης Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

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

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

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

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

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

Κεφάλαιο 5. Κεφ. 5 Λειτουργικά Συστήματα 1 Λειτουργικά Συστήματα Κεφάλαιο 5 Κεφ. 5 Λειτουργικά Συστήματα 1 Διαχείριση Κεντρικής Μνήμης Στην Κεντρική (κύρια) Μνήμη του Η/Υ αποθηκεύονται ανα πάσα στιγμή όλα τα προγράμματα που εκτελούνται στην ΚΜΕ

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX Μάθημα: Λειτουργικά Συστήματα Συστήματα Αρχείων Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) Λειτουργικά Συστήματα 1 Αρχεία με Χαρτογράφηση

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

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

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

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

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 7: Διαχείριση Μνήμης ΙΙ Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

Κεφάλαιο 5. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ -. Σερπάνος 2. Σημείωση Κεφάλαιο 5 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ -. Σερπάνος 1 Σημείωση Οι παρούσες διαφάνειες παρέχονται ως συμπλήρωμα διδασκαλίας για το μάθημα «Αρχιτεκτονική Υπολογιστών» του Τμήματος Ηλεκτρολόγων Μηχανικών & Τεχνολογίας

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

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

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ Γιώργος Δημητρίου Μάθημα 8 ο ΠΜΣ Εφαρμοσμένη Πληροφορική ΜΟΝΑΔΑ ΜΝΗΜΗΣ Επαρκής χωρητικότητα αποθήκευσης Αποδεκτό μέσο επίπεδο απόδοσης Χαμηλό μέσο κόστος ανά ψηφίο Ιεραρχία μνήμης

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

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

Εικονική Μνήμη (Virtual Memory) Εικονική Μνήμη (Virtual Memory) Για τη δημιουργία των διαφανειών έχει χρησιμοποιηθεί υλικό από τις διαφάνειες παραδόσεων που βασίζονται στο βιβλίο, Silberschatz, Galvin and Gagne, Operating Systems Concepts,

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

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

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

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

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

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

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

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

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

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

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

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

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

Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης

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

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

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

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

Διαχείριση Μνήμης (Memory Management)

Διαχείριση Μνήμης (Memory Management) Διαχείριση Μνήμης (Memory Management) Εισαγωγή Βασικές έννοιες και μοντέλο εκτέλεσης Εναλλαγή (swapping) Ανάθεση σε συνεχόμενα τμήματα (contiguous allocation) Σελιδοποίηση (paging) Τμηματοποίηση (segmentation)

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

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

Λειτουργικά Συστήματα (ΗΥ321) Λειτουργικά Συστήματα (ΗΥ321) Διάλεξη 7: Εικονική Μνήμη Σελιδοποίηση & Πίνακες Σελίδων Ιδεατή Μνήμη Βασισμένη σε Σελίδες (Σελιδοποίηση) Σπάσε τη μνήμη σε κομματάκια σταθερού μεγέθους (σελίδες) Δίλλημα:

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

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Ο κώδικας δεν εκτελείται «μόνος του» Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Μεταφραστές Εισαγωγή Διδάσκων: Επικ. Καθ. Γεώργιος Μανής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4 Οργάνωση και Αρχιτεκτονική Υπολογιστών Κεφάλαιο 7.4 Ε/Ε Οδηγούμενη από Διακοπές Το πρόβλημα με την προγραμματιζόμενη Ε/Ε είναι ότι ο επεξεργαστής πρέπει να περιμένει ώστε η μονάδα Ε/Ε που τον ενδιαφέρει

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

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

Λειτουργικά Συστήματα (ΗΥ321) Λειτουργικά Συστήματα (ΗΥ321) Διάλεξη 17: Χειρισμός Εισόδου - Εξόδου Συστήματα Εισόδου / Εξόδου: Το Υλικό Ε/Ε Μεγάλη ποικιλία συσκευών Ε/Ε Και μεγαλώνει Συνηθισμένες έννοιες: Πόρτα Δίαυλος Κοινό μέσο πρόσβασης

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

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Βασικές Έννοιες Λειτουργικών Συστημάτων Βασίλης Σακκάς 13/11/2013 1 ΒασικέςΈννοιεςΛ/Σ Η επικοινωνία μεταξύ Λ/Σ και των προγραμμάτων του χρήστη γίνεται μέσω του συνόλου των «εκτεταμένων

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

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

Εισαγωγή στα Λειτουργικά Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 9: Αρχεία ΙΙ Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σεάδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 9: Αρχεία ΙΙ Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

Αρχιτεκτονική-ΙI Ενότητα 6 : ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Αρχιτεκτονική-ΙI Ενότητα 6 : Υλικό του 80386 Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης Εργαστηριακές Ασκήσεις

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης Εργαστηριακές Ασκήσεις ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διαχείριση μνήμης Εργαστηριακές Ασκήσεις Υλικό από: Modern Operating Systems Laboratory Exercises, Shrivakan Mishra Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο

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

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

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα: Λειτουργικά Συστήματα Συστήματα Αρχείων Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) Λειτουργικά Συστήματα 1 Χρήση Κρυφής Μνήμης (Cache)

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

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 1η: Εισαγωγή στην Οργάνωση Η/Υ Άσκηση 1: Αναλύστε τη διαδοχική εκτέλεση των παρακάτω εντολών MIPS με βάση τις

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

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

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

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

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

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

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

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

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

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

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 4: Διεργασίες Πρόγραμμα Πρόγραμμα 1 Πρόγραμμα

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

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

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 8 : Υποστήριξη από το Λειτουργικό Σύστημα Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών Πληροφορικής

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

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

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 2: Σύστημα Αρχείων Τα προγράμματα που εκτελούνται

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

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

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Κατακερματισμός (Hashing)

Κατακερματισμός (Hashing) Κατακερματισμός (Hashing) O κατακερματισμός είναι μια τεχνική οργάνωσης ενός αρχείου. Είναι αρκετά δημοφιλής μέθοδος για την οργάνωση αρχείων Βάσεων Δεδομένων, καθώς βοηθάει σημαντικά στην γρήγορη αναζήτηση

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

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

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

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

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Πρόγραμμα και εκτέλεση προγράμματος Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

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

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Ενότητα 11: Τεχνικές Κατακερματισμού Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

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

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Υπολογιστικό σύστημα Υλικό (hardware) Λογισμικό (Software) Ολοκληρωμένα κυκλώματα, δίσκοι, οθόνη, κλπ. Λογισμικό συστήματος Προγράμματα εφαρμογών Χρειάζονται ένα συντονιστή!!!

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

Η ιεραρχία της μνήμης

Η ιεραρχία της μνήμης Η ιεραρχία της μνήμης Οι περιορισμοί στο σχεδιασμό της μνήμης συνοψίζονται σε τρεις ερωτήσεις : 1) Πόση 2) Πόσο γρήγορη 3) Πόσο ακριβή Ερωτήματα-Απαντήσεις Ερώτημα πόση μνήμη. Είναι ανοικτό. Αν υπάρχει

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

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

Οργάνωση Υπολογιστών (ΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (ΙI) (κύρια και κρυφή μνήμη) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό

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

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

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

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

Σελίδα Φορτώθηκε Προσπελάστηκε Συχνότητα R Μ (dirty)

Σελίδα Φορτώθηκε Προσπελάστηκε Συχνότητα R Μ (dirty) Ιδεατή Μνήμη Άσκηση 1: Ένας υπολογιστής έχει τέσσερα πλαίσια σελίδων. Οι χρονικές στιγμές φόρτωσης, τελευταίας προσπέλασης, ο αριθμός αναφορών και τα bit αναφοράς (R) και μεταβολής (M ή dirty ) φαίνονται

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

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

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Επικοινωνία με περιφερειακά Αρτηρία εισόδου-εξόδου, διευθύνσεις, εγγραφές αναγνώσεις Διαδικασία εξόδου έλεγχος κατάστασης περιφερειακού περίμενε

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

Οργάνωση Υπολογιστών

Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών 1 Άδειες Χρήσης Το παρόν υλικό

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

Διαχείριση Πολιτισμικών Δεδομένων

Διαχείριση Πολιτισμικών Δεδομένων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Διαχείριση Πολιτισμικών Δεδομένων Ενότητα 6: Εισαγωγή στις Βάσεις Δεδομένων Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και

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

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

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

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

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

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

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

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Δομή Λειτουργικών Συστημάτων Βασίλης Σακκάς 20/11/2013 1 Δομή ενός Λ/Σ -1 Μονολιθικά συστήματα (monolithic systems) Λειτουργικά συστήματα με ανυπαρξία δομής: "η μεγάλη ακαταστασία"

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

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης i Στα σύγχρονα

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

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

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

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

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

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες» 1. Εισαγωγή Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 3 «Διεργασίες» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας Η έννοια της διεργασίας (process) είναι θεμελιώδης για την κατανόηση του τρόπου με τον οποίο

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

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

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

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

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

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κώδικας μηχανής (E) Ο επεξεργαστής μπορεί να εκτελέσει το αρχιτεκτονικό σύνολο εντολών (instruction set architecture) Οι

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

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

Εισαγωγή στην Πληροφορική Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Εισαγωγή στην Πληροφορική Αστροφυσικός Αναπλ. Καθηγητής ΕΜΠ romylos@survey.ntua.gr Λειτουργικά συστήµατα, διεργασίες και δροµολόγηση Σύνδεση

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

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

Λειτουργικά Συστήματα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Λειτουργικά Συστήματα Ενότητα 7: Διαχείριση Μνήμης. Φυσική και Λογική Διευθυνσιοδότηση. Προστασία. Εναλλαγή Μνήμης Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο

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

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 9

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 9 Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 9 Κεφάλαιο 9 ιαχείριση Μνήµης στα Λειτουργικά Συστήµατα Σκοπός του κεφαλαίου αυτού είναι να σου γνωρίσει τον τρόπο µε τον οποίο ένα

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

Υλισµικό διαχείρισης µνήµης (Memory management hardware)

Υλισµικό διαχείρισης µνήµης (Memory management hardware) Ιστορική αναδροµή Πρώτοι υπολογιστές µικρή χωρητικότητα µνήµης (κόστος) διαίρεση προγραµµάτων σε τµήµατα επικάλυψης (overlay segments) που χωρούσαν στην µνήµη (επικάλυψη µνήµης) Κάθε τµήµα επικάλυψης Φορτωνόταν,

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

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

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

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

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής Άσκηση : Λυμένες Ασκήσεις Έστω ένα σύστημα μνήμης, στο οποίο έχουμε προσθέσει μια κρυφή μνήμη θυμάτων 6 θέσεων

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

Προγραμματισμός Ι (HY120)

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY20) # μνήμη & μεταβλητές πρόγραμμα & εκτέλεση Ψηφιακά δεδομένα, μνήμη, μεταβλητές 2 Δυαδικός κόσμος Οι υπολογιστές είναι δυαδικές μηχανές Όλη η πληροφορία (δεδομένα και κώδικας) κωδικοποιείται

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

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

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

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

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

Λειτουργικά Συστήματα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Λειτουργικά Συστήματα Ενότητα 7: Διαχείριση Μνήμης. Φυσική και Λογική Διευθυνσιοδότηση. Προστασία. Εναλλαγή Μνήμης Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο

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

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

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

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

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

Λειτουργικά Συστήματα (ΗΥ222) Λειτουργικά Συστήματα (ΗΥ222) Διάλεξη 7: Εισαγωγή στην Ιδεατή Μνήμη - Τμηματοποίηση Η Ευτυχισμένη Κοινωνία των Διεργασιών 2 Πολλαπλές χαρούμενες διεργασίες στο σύστημα Και αν το Visual Studio χρειαστεί

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

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

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

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

Υλισμικό Διαχείρισης Μνήμης (Memory Management Hardware)

Υλισμικό Διαχείρισης Μνήμης (Memory Management Hardware) Υλισμικό Διαχείρισης Μνήμης (Memory Management Hardware) Ιστορική αναδρομή Πρώτοι υπολογιστές μικρή χωρητικότητα μνήμης (κόστος) διαίρεση προγραμμάτων σε τμήματα επικάλυψης (overlay segments) που χωρούσαν

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

Περιεχόμενα ΠΡΟΛΟΓΟΣ 25 1 ΕΙΣΑΓΩΓΗ 31

Περιεχόμενα ΠΡΟΛΟΓΟΣ 25 1 ΕΙΣΑΓΩΓΗ 31 Περιεχόμενα ΠΡΟΛΟΓΟΣ 25 1 ΕΙΣΑΓΩΓΗ 31 1.1 ΤΙ ΕΙΝΑΙ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ; 34 1.1.1 Το λειτουργικό σύστημα ως επεκτεταμένη μηχανή 34 1.1.2 Το λειτουργικό σύστημα ως διαχειριστής πόρων 36 1.2 Η ΙΣΤΟΡΙΑ ΤΩΝ

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

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 5β: Διαχείριση Κύριας Μνήμης Διαχείριση Δευτερεύουσας Μνήμης Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης Ενότητα: Λειτουργικά Συστήµατα, Συστήµατα Batch και Time Sharing Γεώργιος Σκιάνης Γεωλογίας και Γεωπεριβάλλοντος Σελίδα 2 1. Περιεχόµενα ενότητας...

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

Τεχνολογίες Κύριας Μνήμης

Τεχνολογίες Κύριας Μνήμης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κύρια Μνήμη

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