Διδακτικά Βιβλία του Παιδαγωγικού Ινστιτούτου

Αναζήτηση

Βρες
Εμφάνιση

Μέθοδοι εγγραφής στη λανθάνουσα μνήμη

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

Η εντολή «Write 52», στο προηγούμενο παράδειγμα, οδηγεί στην καταγραφή μιας νέας λέξης στη διεύθυνση μνήμης 52, η οποία τυχαίνει να είναι αποθηκευμένη και στη λανθάνουσα μνήμη (ενότητα 48-63). Τόσο τα περιεχόμενα της κύριας όσο και της λανθάνουσας μνήμης πρέπει να ενημερωθούν.

Στην περίπτωση αυτή το σύστημα μπορεί να εφαρμόσει μια από τις ακόλουθες δύο τεχνικές:

α) Επανεγγραφή (write back): Στην περίπτωση αυτή, η νέα τιμή της θέσης μνήμης 52 καταγράφεται μόνο στη λανθάνουσα μνήμη. Όταν όμως αργότερα χρειαστεί να απομακρυνθεί η ενότητα 48-63 από τη λανθάνουσα μνήμη, θα πρέπει τα περιεχόμενά της να αντιγραφούν πάλι στις αντίστοιχες θέσεις της κύριας μνήμης. Η μέθοδος αυτή έχει ως κύριο πλεονέκτημα την πολύ γρήγορη εκτέλεση των εγγραφών στη μνήμη. Απαιτεί, ωστόσο, πρόσθετο έργο για την αντιγραφή από τη λανθάνουσα μνήμη στην κύρια μνήμη των ενοτήτων που αντικαθίστανται. Αυτό μπορεί να αποφευχθεί μόνον αν, στην ενότητα που θα αντικατασταθεί, δεν έχει γίνει καμία εγγραφή για όσο χρόνο η ενότητα αυτή βρισκόταν στη λανθάνουσα μνήμη.

β) Διεγγραφή (write through): Στην περίπτωση αυτή, η νέα τιμή της θέσης μνήμης 52 καταγράφεται στη λανθάνουσα μνήμη και ταυτόχρονα, ενώ συνεχίζεται η εκτέλεση του προγράμματος με επόμενες λειτουργίες, γίνεται καταγραφή της νέας τιμής και στη διεύθυνση 52 της κύριας μνήμης. Η μέθοδος αυτή εξασφαλίζει τη μόνιμη συμφωνία ανάμεσα στα περιεχόμενα της λανθάνουσας μνήμης και της κύριας μνήμης. Έτσι, όταν μια ενότητα αντικαθίσταται στη λανθάνουσα μνήμη, δε χρειάζεται να επανεγγραφεί στην κύρια μνήμη. Μπορεί όμως να προκαλέσει καθυστέρηση στην ολοκλήρωση των εγγραφών στη μνήμη.