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