Ακολουθεί μια ανάλυση των βασικών χαρακτηριστικών:
* Δυναμικό μέγεθος: Τα διαμερίσματα δημιουργούνται και αλλάζουν το μέγεθος ανάλογα με τις ανάγκες με βάση το μέγεθος των φορτωμένων προγραμμάτων. Δεν υπάρχει προκαθορισμένο μέγεθος διαμερίσματος.
* μετεγκατάσταση: Τα διαμερίσματα μπορούν να μετακινηθούν μέσα σε φυσική μνήμη. Αυτό είναι κρίσιμο, διότι μπορεί να εμφανιστεί κατακερματισμός (τόσο εσωτερικός όσο και εξωτερικός). Με τη μετεγκατάσταση των διαμερισμάτων, το λειτουργικό σύστημα μπορεί να εδραιώσει τον ελεύθερο χώρο και να μειώσει την επίδραση του κατακερματισμού.
* συμπίεση μνήμης: Για να αντιμετωπίσει τον εξωτερικό κατακερματισμό (όπου υπάρχει αρκετή συνολική ελεύθερη μνήμη, αλλά δεν είναι συνεχής), το λειτουργικό σύστημα μπορεί να συμπιέσει τη μνήμη. Αυτό συνεπάγεται τη μετακίνηση των υφιστάμενων διαμερισμάτων στο ένα άκρο της μνήμης, δημιουργώντας ένα μόνο μεγάλο μπλοκ συνεχόμενου ελεύθερου χώρου. Η ανακοίνωση είναι απαραίτητη για τη συμπύκνωση.
* Βελτιωμένη χρήση μνήμης: Σε σύγκριση με τη σταθερή διαίρεση, η μετακινούμενη δυναμική διαίρεση γενικά οδηγεί σε καλύτερη χρήση μνήμης, επειδή προσαρμόζεται σε διαφορετικά μεγέθη προγραμμάτων και αποφεύγει το σπατάλη χώρου σε διαμερίσματα σταθερού μεγέθους που ενδέχεται να χρησιμοποιηθούν εν μέρει.
* Πιο πολύπλοκη διαχείριση: Η διαχείριση των μετακινούμενων δυναμικών διαμερισμάτων είναι σημαντικά πιο πολύπλοκη από τα σταθερά διαμερίσματα. Το λειτουργικό σύστημα πρέπει να παρακολουθεί τα μεγέθη διαμερισμάτων, τις τοποθεσίες και τον ελεύθερο χώρο και να εφαρμόσει αλγόριθμους για μετεγκατάσταση και συμπύκνωση. Αυτό προσθέτει πάνω από το κεφάλι.
Πώς λειτουργεί (γενικά):
Το λειτουργικό σύστημα διατηρεί μια δωρεάν λίστα ή ένα χάρτη bit που παρακολουθεί τον διαθέσιμο χώρο μνήμης. Όταν μια διαδικασία ζητά μνήμη, το λειτουργικό σύστημα αναζητά έναν επαρκώς μεγάλο ελεύθερο χώρο. Εάν βρεθεί ένας κατάλληλος χώρος, διαθέτει τη μνήμη στη διαδικασία. Εάν είναι δυνατή η μετεγκατάσταση, το λειτουργικό σύστημα μπορεί να μετακινήσει τα υπάρχοντα διαμερίσματα για να δημιουργήσει ένα συνεχόμενο μπλοκ, εάν είναι απαραίτητο. Όταν τερματιστεί μια διαδικασία, η μνήμη της απελευθερώνεται, προσθέτοντας την πίσω στη δωρεάν λίστα.
σύγκριση με άλλα συστήματα διαχείρισης μνήμης:
* σταθερό διαμέρισμα: Απλούστερη στη διαχείριση, αλλά υποφέρει από εσωτερικό και εξωτερικό κατακερματισμό.
* σελίδα: Διαχωρίζει τη μνήμη σε σελίδες και διαδικασίες σταθερού μεγέθους σε σελίδες. Διευθύνει τον εξωτερικό κατακερματισμό επιτρέποντας τη μη συνεχόμενη κατανομή μνήμης.
* κατάτμηση: Χωρίζει τη μνήμη σε τμήματα μεταβλητού μεγέθους. Αντιμετωπίζει τον εσωτερικό κατακερματισμό με την κατανομή μόνο της απαραίτητης μνήμης.
Η αναφερόμενη δυναμική διαίρεση αντιπροσωπεύει ένα βήμα προς την αποτελεσματικότερη διαχείριση της μνήμης σε σύγκριση με τη σταθερή διαχωρισμό, αλλά είναι λιγότερο εξελιγμένο από τη σελίδα ή την κατάτμηση. Είναι ένα λιγότερο συνηθισμένο σχήμα στα σύγχρονα λειτουργικά συστήματα, που συχνά αντικαταστάθηκαν από πιο προηγμένες τεχνικές όπως η τηλεειδοποίηση και η εικονική μνήμη.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα