Skip to main content

Τι είναι η άμεση χαρτογράφηση;

Η άμεση χαρτογράφηση είναι μια μέθοδος αποθήκευσης πληροφοριών για εύκολη πρόσβαση σε έναν υπολογιστή.Οι πρόσφατα χρησιμοποιούμενες πληροφορίες αποθηκεύονται σε μια μνήμη cache, έτσι ώστε ο υπολογιστής να μπορεί γρήγορα να βρει τις πληροφορίες την επόμενη φορά που χρειάζεται.Στον προγραμματισμό υπολογιστών, μια μνήμη cache είναι ένα μικρό τμήμα μνήμης τυχαίας προσπέλασης (RAM) που έχει αφαιρεθεί για το σκοπό της εύκολης ανάκτησης δεδομένων.Με άμεση χαρτογράφηση, κάθε κομμάτι δεδομένων στη μνήμη έχει εκχωρηθεί ένας χώρος στην προσωρινή μνήμη, το οποίο μοιράζεται με άλλα δεδομένα.Τα δεδομένα της προσωρινής μνήμης αντικαθίστανται συνεχώς καθώς χρειάζονται νέα δεδομένα.

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

Το ποσοστό των αιτημάτων που οδηγεί σε χτυπήματα cache ονομάζεται ρυθμός επιτυχίας.Εάν τα δεδομένα που ζήτησε ο χρήστης δεν είναι στην προσωρινή μνήμη, ο υπολογιστής θα το βρει στη μνήμη.Ένα αντίγραφο των δεδομένων θα κατατεθεί στην προσωρινή μνήμη, ώστε να βρεθεί γρήγορα την επόμενη φορά που ο χρήστης το ζητά, θεωρητικά αυξάνοντας το ποσοστό επιτυχίας.Όλα αυτά συμβαίνουν πίσω από τις σκηνές.Ο χρήστης δεν γνωρίζει αν τα δεδομένα που λαμβάνονται προέρχονταν από την προσωρινή μνήμη ή τη μνήμη.

Η άμεση χαρτογράφηση είναι μια μέθοδος για να αποφασιστεί πού θα αποθηκευτεί μπλοκ μνήμης στην κρυφή μνήμη.Κάθε μπλοκ μνήμης έχει εκχωρηθεί μια συγκεκριμένη γραμμή στην προσωρινή μνήμη.Δεδομένου ότι η κρυφή μνήμη είναι μικρότερη από τη μνήμη, πολλά μπλοκ θα μοιράζονται μία μόνο γραμμή στην προσωρινή μνήμη.Εάν μια γραμμή είναι ήδη γεμάτη όταν ένα νέο μπλοκ πρέπει να γραφτεί σε αυτό, ένα παλιό μπλοκ θα αντικατασταθεί.

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