Συνιστάται, 2024

Επιλογή Συντάκτη

Διαφορά μεταξύ συνεχόμενης και μη συνεκτικής κατανομής μνήμης

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

Συγκριτικό διάγραμμα

Βάση τη σύγκρισηΣυνεχής κατανομή μνήμηςΜη συνεχής κατανομή μνήμης
ΒασικόςΚαταχωρεί διαδοχικά μπλοκ μνήμης σε μια διαδικασία.Καταχωρεί χωριστά μπλοκ μνήμης σε μια διαδικασία.
Γενικά έξοδαΗ συνεχής κατανομή μνήμης δεν έχει το γενικό κόστος της μετάφρασης διευθύνσεων κατά την εκτέλεση μιας διαδικασίας.Η μη συνεχής κατανομή μνήμης έχει γενικά έξοδα μετάφρασης διεύθυνσης κατά την εκτέλεση μιας διαδικασίας.
Ποσοστό εκτέλεσηςΜια διαδικασία εκτελεί το fatser σε συνεχή κατανομή μνήμηςΜια διαδικασία εκτελείται αρκετά πιο αργά συγκριτικά σε μη συνεχή κατανομή μνήμης.
ΛύσηΟ χώρος μνήμης πρέπει να χωριστεί στο διαμέρισμα σταθερού μεγέθους και κάθε διαμέρισμα κατανέμεται σε μία μόνο διαδικασία.Διαχωρίστε τη διαδικασία σε πολλά μπλοκ και τοποθετήστε τα σε διαφορετικά μέρη της μνήμης ανάλογα με τη διαθεσιμότητα διαθέσιμου χώρου μνήμης.
ΤραπέζιΈνας πίνακας διατηρείται από το λειτουργικό σύστημα το οποίο διατηρεί τη λίστα διαθέσιμων και κατεχομένων διαμερισμάτων στο χώρο μνήμηςΈνας πίνακας πρέπει να διατηρηθεί για κάθε διαδικασία που μεταφέρει τις διευθύνσεις βάσης κάθε μπλοκ που έχει αποκτηθεί από μια διαδικασία στη μνήμη.

Ορισμός της κατανομής συνεχούς μνήμης

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

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

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

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

Ορισμός μη συνεχιζόμενης κατανομής μνήμης

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

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

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

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

Βασικές διαφορές μεταξύ συνεχόμενης και μη συνεκτικής κατανομής μνήμης

  1. Η βασική διαφορά μεταξύ συνεχόμενης και μη συνεχούς κατανομής μνήμης είναι ότι η συνεχής κατανομή κατανέμει ένα ενιαίο συνεχόμενο μπλοκ μνήμης στη διαδικασία, ενώ η μη συνεχής κατανομή διαιρεί τη διαδικασία σε διάφορα μπλοκ και τα τοποθετεί στο διαφορετικό χώρο διευθύνσεων της μνήμης δηλαδή σε μη συνεχή τρόπο .
  2. Σε συνεχή κατανομή μνήμης, η διαδικασία αποθηκεύεται σε συνεχή χώρο μνήμης. οπότε δεν υπάρχει επιβάρυνση της μετάφρασης διεύθυνσης κατά την εκτέλεση. Αλλά σε μη συνεχή κατανομή μνήμης, υπάρχει μια επιβάρυνση της μετάφρασης διεύθυνσης ενώ η εκτέλεση της διαδικασίας, καθώς τα μπλοκ διεργασίας διαδίδονται στον χώρο της μνήμης.
  3. Η διαδικασία που αποθηκεύεται σε συνεχή μνήμη εκτελείται γρηγορότερα σε σύγκριση με τη διαδικασία που αποθηκεύεται σε μη συνεχή χώρο μνήμης.
  4. Η λύση για συνεχή κατανομή μνήμης είναι να διαιρέσετε το χώρο μνήμης στο διαμέρισμα σταθερού μεγέθους και να διαθέσετε ένα διαμέρισμα σε μία μόνο διαδικασία. Από τα άλλα χέρια, σε μη κατανοητή κατανομή μνήμης, μια διαδικασία χωρίζεται σε πολλά μπλοκ και κάθε μπλοκ τοποθετείται σε διαφορετικά σημεία στη μνήμη ανάλογα με τη διαθεσιμότητα της μνήμης.
  5. Σε συνεχή κατανομή μνήμης, το λειτουργικό σύστημα πρέπει να διατηρεί έναν πίνακα ο οποίος δείχνει ποιο διαμέρισμα είναι διαθέσιμο για τη διαδικασία και το οποίο καταλαμβάνεται από τη διαδικασία. Σε μη συνεχή κατανομή μνήμης, διατηρείται ένας πίνακας για κάθε διαδικασία που υποδεικνύει τη διεύθυνση βάσης κάθε μπλοκ της διαδικασίας που τοποθετείται στο χώρο μνήμης.

Συμπέρασμα:

Η συνεχής κατανομή μνήμης δεν δημιουργεί γενικά έξοδα και ενισχύει την ταχύτητα εκτέλεσης της διαδικασίας αλλά αυξάνει τη σπατάλη της μνήμης . Με τη σειρά της, η μη συνεχής κατανομή μνήμης δημιουργεί γενικά έξοδα για τη μετάφραση διεύθυνσης, μειώνει την ταχύτητα εκτέλεσης μιας διαδικασίας, αλλά αυξάνει τη χρήση της μνήμης . Υπάρχουν λοιπόν πλεονεκτήματα και μειονεκτήματα για τις δύο μεθόδους κατανομής.

Top