Μια άλλη λύση για τον εξωτερικό κατακερματισμό είναι η για να επιτρέπεται ο λογικός χώρος διευθύνσεων των διεργασιών να είναι μη συνεχόμενος. Η διαδικασία εκχωρείται με τη διαθέσιμη φυσική μνήμη και όποτε είναι διαθέσιμη η νεότερη, εκχωρείται στη διεργασία.
Τι είναι το πρόβλημα του εξωτερικού κατακερματισμού;
Ο εξωτερικός κατακερματισμός προκύπτει όταν η ελεύθερη μνήμη χωρίζεται σε μικρά μπλοκ και παρεμβάλλεται από εκχωρημένη μνήμη Αποτελεί αδυναμία ορισμένων αλγορίθμων κατανομής αποθηκευτικού χώρου, όταν αποτυγχάνουν να παραγγείλουν τη μνήμη που χρησιμοποιείται από προγράμματα αποτελεσματικά. … Κατανεμήθηκαν τρία μπλοκ A, B και C, μεγέθους 0x1000.
Πώς η συμπύκνωση λύνει το πρόβλημα του εξωτερικού κατακερματισμού;
Μπορούμε επίσης να χρησιμοποιήσουμε συμπίεση για να ελαχιστοποιήσουμε την πιθανότητα εξωτερικού κατακερματισμού. Στη συμπύκνωση, όλα τα ελεύθερα διαμερίσματα γίνονται συνεχόμενα και όλα τα φορτωμένα χωρίσματα συγκεντρώνονται. Εφαρμόζοντας αυτήν την τεχνική, μπορούμε να αποθηκεύσουμε τις μεγαλύτερες διεργασίες στη μνήμη.
Πώς λύνετε ένα πρόβλημα κατακερματισμού χρησιμοποιώντας σελιδοποίηση;
Η σελιδοποίηση βοηθά στον εξωτερικό κατακερματισμό με δύο τρόπους
- Πρώτον, υποδιαιρεί τη μνήμη σε γειτονικά κομμάτια σταθερού μεγέθους - τις σελίδες - που είναι "αρκετά μεγάλες", ώστε να μην είναι ποτέ άχρηστες. …
- Δεύτερον, το υλικό σελιδοποίησης παρέχει ένα επίπεδο κατευθύνσεων μεταξύ των σελίδων εφαρμογής και των σελίδων φυσικής μνήμης.
Ποιοι αλγόριθμοι υποφέρουν από το πρόβλημα του εξωτερικού κατακερματισμού;
Τμηματοποίηση μπορεί να προκαλέσει εξωτερικό κατακερματισμό, όταν όλα τα μπλοκ ελεύθερης μνήμης είναι πολύ μικρά για να χωρέσουν ένα τμήμα, αλλά το άθροισμα των ελεύθερων χώρων είναι μεγαλύτερο από το μέγεθος του τμήματος. Ως εκ τούτου, η σελιδοποίηση πάσχει από εσωτερικό κατακερματισμό και η τμηματοποίηση από εξωτερικό πρόβλημα κατακερματισμού.