Η Microsoft υλοποίησε στο WSL2 (Windows Subsystem for Linux) την επιστροφή της μνήμης στο σύστημα

Microsoft ανακοινώθηκε σχετικά με την επέκταση των δυνατοτήτων του επιπέδου WSL2 (Windows Subsystem for Linux), το οποίο διασφαλίζει την εκκίνηση των εκτελέσιμων αρχείων Linux στα Windows. Σε πειραματικές κατασκευές παράθυρα Πρόσωπα (κατασκευή 19013) στο επίπεδο WSL2, εμφανίστηκε υποστήριξη για την επιστροφή μνήμης στο σύστημα (Memory Reclamation) που απελευθερώνεται από διεργασίες που εκτελούνται σε περιβάλλον που βασίζεται στον πυρήνα του Linux.

Προηγουμένως, σε περίπτωση αύξησης της κατανάλωσης μνήμης από τις εφαρμογές ή τον πυρήνα, η μνήμη εκχωρούνταν στην εικονική μηχανή WSL2, αλλά μετά παρέμενε καρφιτσωμένη και δεν επέστρεφε στο σύστημα, ακόμη και μετά τον τερματισμό της διαδικασίας έντασης πόρων και εκεί δεν χρειαζόταν περαιτέρω την εκχωρημένη μνήμη. Ο μηχανισμός Ανάκτησης Μνήμης σάς επιτρέπει να επιστρέψετε την ελευθερωμένη μνήμη στο κύριο λειτουργικό σύστημα και να μειώσετε αυτόματα το μέγεθος της μνήμης της εικονικής μηχανής. Αυτό επιστρέφει όχι μόνο τη μνήμη που ελευθερώνεται από τις διεργασίες του χρήστη, αλλά και τη μνήμη που χρησιμοποιείται για την προσωρινή αποθήκευση στον πυρήνα του Linux. Για παράδειγμα, με υψηλή δραστηριότητα δίσκου, αυξάνεται το μέγεθος της προσωρινής μνήμης σελίδας, στην οποία τα περιεχόμενα των αρχείων αποτίθενται όταν εκτελείται το σύστημα αρχείων. Μετά την εκτέλεση του "echo 1 > /proc/sys/vm/drop_caches" η προσωρινή μνήμη μπορεί να διαγραφεί και η μνήμη μπορεί να επιστρέψει στο κύριο λειτουργικό σύστημα.

Η υλοποίηση της Ανάκτησης Μνήμης βασίζεται σε
κηλίδα, που προτάθηκε από μηχανικούς της Intel για συμπερίληψη στον κύριο πυρήνα Linux προκειμένου να επεκταθούν οι δυνατότητες του προγράμματος οδήγησης virtio-balloon και για το σύστημα διαχείρισης μνήμης. Η καθορισμένη ενημερωμένη έκδοση κώδικα έχει σχεδιαστεί για χρήση σε οποιαδήποτε φιλοξενούμενα συστήματα για την επιστροφή αχρησιμοποίητων σελίδων μνήμης στο κεντρικό σύστημα και μπορεί να χρησιμοποιηθεί με διάφορους υπερεπόπτες. Στην περίπτωση του WSL2, η ενημερωμένη έκδοση κώδικα έχει προσαρμοστεί ώστε να επιστρέφει τη μνήμη στον υπερεπόπτη Hyper-V.

Θυμηθείτε ότι η δεύτερη έκδοση του WSL διαφορετικός παράδοση ενός πλήρους πυρήνα Linux αντί για έναν εξομοιωτή που μεταφράζει τις κλήσεις συστήματος Linux σε κλήσεις συστήματος Windows on the fly. Παραδίδεται σε WSL2 τον πυρήνα του Linux Βασίζεται στην έκδοση 4.19, η οποία εκτελείται σε περιβάλλον Windows χρησιμοποιώντας μια εικονική μηχανή που εκτελείται ήδη στο Azure. Οι ενημερώσεις στον πυρήνα του Linux παραδίδονται μέσω του μηχανισμού Windows Update και δοκιμάζονται σε σχέση με την υποδομή συνεχούς ενοποίησης της Microsoft. Οι ενημερώσεις κώδικα του πυρήνα ειδικά για το WSL2 περιλαμβάνουν βελτιστοποιήσεις για τη μείωση του χρόνου εκκίνησης του πυρήνα, τη μείωση της κατανάλωσης μνήμης και την παροχή στον πυρήνα με το ελάχιστο απαιτούμενο σύνολο προγραμμάτων οδήγησης και υποσυστημάτων.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο