Microsoft wdrożył w WSL2 (Windows Subsystem for Linux) przywracanie pamięci systemowi

Firma Microsoft ogłosiła o rozszerzeniu możliwości warstwy WSL2 (Windows Subsystem for Linux), która umożliwia uruchamianie plików wykonywalnych Linux w systemie Windows. W wersjach eksperymentalnych Windows Insider (build 19013) w warstwie WSL2 wprowadzono wsparcie dla zwracania pamięci systemowej (Memory Reclamation), zwalnianej przez procesy działające w środowisku opartym na jądrze Linux.

Wcześniej, w przypadku wzrostu zużycia pamięci przez aplikacje lub jądro, pamięć była przydzielana maszynie wirtualnej WSL2, ale po tym pozostawała zablokowana i nie była zwracana systemowi, nawet po zakończeniu zasobożernego procesu i braku dalszej potrzeby na przydzieloną pamięć. Mechanizm Memory Reclamation pozwala na zwracanie zwolnionej pamięci do głównego systemu operacyjnego i automatyczne zmniejszanie rozmiaru pamięci maszyny wirtualnej. Przy tym zwracana jest nie tylko pamięć zwalniana przez procesy użytkownika, ale również pamięć używana do buforowania w jądrze Linux. Na przykład, przy intensywnej aktywności dyskowej wzrasta rozmiar pamięci podręcznej stron, w której osadza się zawartość plików podczas pracy systemu plików. Po wykonaniu „echo 1 > /proc/sys/vm/drop_caches” pamięć podręczną można wyczyścić i zwrócić pamięć do głównego systemu operacyjnego.

Realizacja Memory Reclamation opiera się na
łatce, zaproponowanej przez inżynierów Intela do włączenia do głównego jądra Linux w celu rozszerzenia możliwości sterownika virtio-balloon oraz dla systemu zarządzania pamięcią. Wskazana łatka jest przeznaczona do stosowania w dowolnych systemach gościnnych w celu zwracania nieużywanych stron pamięci do systemu macierzystego i może być stosowana z różnymi hypervisorami. W przypadku WSL2 łatka została dostosowana do zwracania pamięci hypervisorowi Hyper-V.

Przypomnijmy, że druga edycja WSL wyróżnia się dostarczając kompletne jądro Linux zamiast emulatora, który na bieżąco tłumaczy wywołania systemowe Linux na wywołania systemowe Windows. Dostarczane w WSL2 jądro Linux oparte jest na wersji 4.19, która działa w środowisku Windows przy pomocy maszyny wirtualnej, już stosowanej w Azure. Aktualizacje dla jądra Linux dostarczane są za pomocą mechanizmu Windows Update i testowane w infrastrukturze ciągłej integracji Microsoft. Stosowane w jądrze specyficzne dla WSL2 łatki obejmują optymalizacje w celu skrócenia czasu uruchamiania jądra, zmniejszenia zużycia pamięci i pozostawienia w jądrze minimalnego niezbędnego zestawu sterowników i podsystemów.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster