ProHoster > Blog > Internet Neiegkeeten > Microsoft huet am WSL2 (Windows Subsystem fir Linux) de Retour vun der Erënnerung an de System implementéiert
Microsoft huet am WSL2 (Windows Subsystem fir Linux) de Retour vun der Erënnerung an de System implementéiert
Microsoft Firma ugekënnegt о расширении возможностей прослойки 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 anescht поставкой полноценного ядра Linux вместо эмулятора, на лету транслирующего системные вызовы Linux в системные вызовы Windows. Поставляемое в WSL2 Linux Kernel основано на выпуске 4.19, который выполняется в окружении Windows при помощи виртуальной машины, уже применяемой в Azure. Обновления для ядра Linux доставляются через механизм Windows Update и тестируются в инфраструктуре непрерывной интеграции Microsoft. Применяемые в ядре специфичные для WSL2 патчи включают оптимизации для сокращения времени запуска ядра, уменьшения потребления памяти и оставления в ядре минимально необходимого набора драйверов и подсистем.