Microsoft реализира възстановяване на памет в WSL2 (Windows Subsystem for Linux)

Компания Microsoft обяви за разширяване на възможностите на слоя WSL2 (Windows Subsystem for Linux), който осигурява стартиране на изпълними файлове на Linux в Windows. В експерименталните версии Windows Insider (build 19013) в слоя WSL2 се появи поддръжка за връщане на системната памет (Memory Reclamation), освободена от процесите, работещи в среда на основата на ядрото Linux.

По-рано, при нарастваща консумация на памет от приложения или ядрото, паметта се предоставяше на виртуалната машина WSL2, но след това оставаше закрепена и не се връщаше на системата, дори след завършване на ресурсно интензивния процес и отсъствие на по-нататъшна нужда от предоставената памет. Механизмът Memory Reclamation позволява да се връща освободената памет в основната ОС и автоматично да се намалява размерът на паметта на виртуалната машина. В този процес не само паметта, освободена от потребителските процеси, но и паметта, използвана за кеширане в ядрото Linux, се връща. Например, при висока дискова активност размерът на страничния кеш нараства, в който остават съдържанието на файловете при работа с ФС. След изпълнение на „echo 1 > /proc/sys/vm/drop_caches“ кешът може да бъде изчистен и паметта да бъде върната на основната ОС.

Реализацията на Memory Reclamation се основава на
пач, предложен от инженери на Intel за включване в основното ядро на Linux с цел разширяване на възможностите на драйвера virtio-balloon и системата за управление на паметта. Указаният пач е предназначен за използване в различни гост-процеси за връщане на неизползвани страници памет на хост системата и може да се използва с различни хипервизори. В случая на WSL2 пачът е адаптиран за връщане на памет на хипервизора Hyper-V.

Напомняме, че втората редакция на WSL се отличава доставя пълноценно ядро на Linux вместо емулационна среда, която в реално време трансформира системните повиквания на Linux в системните повиквания на Windows. Доставяното в WSL2 ядро на Linux е базирано на версия 4.19, която работи в среда на Windows с помощта на виртуална машина, вече използвана в Azure. Актуализациите за ядрото на Linux се доставят чрез механизма Windows Update и се тестват в инфраструктурата на непрекъсната интеграция на Microsoft. Използваните в ядрото специфични за WSL2 пачове включват оптимизации за намаляване на времето за стартиране на ядрото, намаляване на потреблението на памет и оставяне в ядрото на минимално необходимия набор от драйвери и подсистеми.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster