Πίνακας περιεχομένων:
Ορισμός - Τι σημαίνει η εικονική μνήμη (VM);
Η εικονική μνήμη (VM) είναι μια λειτουργία που αναπτύχθηκε για τον πυρήνα ενός λειτουργικού συστήματος (OS) που προσομοιώνει πρόσθετη κύρια μνήμη, όπως RAM (μνήμη τυχαίας προσπέλασης) ή αποθήκευση δίσκων. Αυτή η τεχνική περιλαμβάνει τον χειρισμό και τη διαχείριση της μνήμης επιτρέποντας ταυτόχρονα τη φόρτωση και εκτέλεση μεγαλύτερων προγραμμάτων ή πολλαπλών προγραμμάτων. Επιτρέπει επίσης σε κάθε πρόγραμμα να λειτουργεί σαν να είχε άπειρη μνήμη και συχνά θεωρείται πιο αποδοτικό από την αγορά πρόσθετης μνήμης RAM.
Η εικονική μνήμη επιτρέπει στο λογισμικό να χρησιμοποιεί πρόσθετη μνήμη χρησιμοποιώντας τη μονάδα σκληρού δίσκου (HDD) ως προσωρινή αποθήκευση. Οι περισσότερες κεντρικές μονάδες επεξεργασίας (CPU) παρέχουν μονάδες διαχείρισης μνήμης (MMU) που υποστηρίζουν εικονική μνήμη. Το MMU υποστηρίζει τους "πίνακες σελίδων" που χρησιμοποιούνται για τη μετατροπή των "πραγματικών" και "εικονικών" διευθύνσεων που βρίσκονται στη μνήμη και στον σκληρό δίσκο.
Ένα λειτουργικό σύστημα που χρησιμοποιεί εικονική μνήμη απελευθερώνει χώρο μεταφέροντας δεδομένα από τον σκληρό δίσκο που δεν απαιτείται αμέσως. Όταν χρειάζονται τα δεδομένα, αντιγράφονται στο σκληρό δίσκο. Όταν χρησιμοποιείται όλη η μνήμη RAM, το VM ανταλλάσσει δεδομένα στο σκληρό δίσκο και έπειτα ξανά. Έτσι, το VM επιτρέπει μια μεγαλύτερη συνολική μνήμη του συστήματος. Ωστόσο, απαιτείται πολύπλοκος γραπτός κώδικας.
Η Techopedia εξηγεί την Εικονική Μνήμη (VM)
Στη δεκαετία του 1940 και του 1950, πριν από το VM, μεγάλα προγράμματα υλοποίησαν λογική για τη διαχείριση της πρωτογενούς και δευτερογενούς αποθήκευσης. Η διαδικασία ονομάστηκε επικάλυψη. Όταν ένα πρόγραμμα ήταν μεγαλύτερο από την αποθήκευση μνήμης, η διαδικασία επέτρεψε τμήματα του προγράμματος που δεν χρησιμοποιούνταν συνεχώς να αντιμετωπίζονται ως επικάλυψη. Κάθε μεμονωμένη επικάλυψη θα αντικαταστήσει την τρέχουσα επικάλυψη στη μνήμη. Ο προγραμματισμός για επικάλυψη ήταν εκτενής. Ένας από τους κύριους λόγους για τη δημιουργία VM δεν ήταν για πρόσθετη κύρια μνήμη αλλά για ευκολία προγραμματισμού. Μέχρι το 1969 πραγματοποιήθηκε η αποτελεσματικότητα της εικονικής μνήμης. και έγινε ευρέως εφαρμοσμένη.
Η VM προσπαθεί κυριολεκτικά να χρησιμοποιήσει περισσότερη μνήμη RAM ή μνήμης αποθήκευσης δίσκων από ότι υπάρχει. Αυτή η διαδικασία επιτρέπει στην CPU να χειρίζεται ταυτόχρονα μεγαλύτερα και πολλαπλά προγράμματα. Το VM είναι ένα συνηθισμένο λειτουργικό σύστημα (OS) και πρόγραμμα υλικού που χρησιμοποιεί ένα σκληρό δίσκο με προσωρινή αποθήκευση και έλεγχο της μνήμης. Η διαδικασία χειρισμού και διαχείρισης μνήμης επιτρέπει σε κάθε εφαρμογή να λειτουργήσει σαν να είχε σχεδόν άπειρη μνήμη. Η προσωρινή αποθήκευση μνήμης διαχειρίζεται μια μονάδα διαχείρισης μνήμης (MMU), γνωστή και ως "μονάδα διαχείρισης σελίδας μνήμης" (PMMU).
Η "πραγματική" μνήμη χωρίζεται σε μικρά τμήματα που ονομάζονται "σελίδες". Οι σελίδες είναι γενικά μεγέθους 4 kilobyte. Όταν χρησιμοποιείται όλη η μνήμη RAM ή του δίσκου, κάθε σελίδα που δεν χρησιμοποιείται γράφεται στην εικονική μνήμη σε αυτό που ονομάζεται αρχείο ανταλλαγής. Όταν το αρχείο ανταλλαγής είναι απαραίτητο, τότε μεταφράζεται πίσω στην "πραγματική" μνήμη, μια διαδικασία που ονομάζεται εναλλαγή σελίδας.
Ένα από τα λίγα μειονεκτήματα της χρήσης του VM είναι ότι μπορεί να υπάρξει υπερβολική εναλλαγή σελίδας, ειδικά αν ο χρήστης έχει πολλές ανοιχτές εφαρμογές. Αυτό μπορεί να αναγκάσει τα προγράμματα να επιβραδύνουν δραστικά καθώς η CPU ξοδεύει πολύ χρόνο για εγγραφή στον σκληρό δίσκο. Η σημαντική μείωση των επιδόσεων ονομάζεται thrashing.
