Microsoft je implementirao u WSL2 (Windows Subsystem for Linux) vraćanje memorije u sustav

Microsoft najavio o proširenju mogućnosti sloja WSL2 (Windows Subsystem for Linux), koji osigurava pokretanje Linux izvršnih datoteka na Windowsima. U eksperimentalnim izvedbama Windows Insider (build 19013) u sloju WSL2 pojavila se podrška za vraćanje memorije u sustav (Memory Reclamation) koju oslobađaju procesi koji se izvode u okruženju temeljenom na Linux kernelu.

Prethodno, u slučaju povećanja potrošnje memorije od strane aplikacija ili kernela, memorija je bila dodjeljivana WSL2 virtualnom stroju, ali je nakon toga ostajala prikvačena i nije se vraćala u sustav, čak ni nakon završetka procesa koji zahtijeva velike resurse i više nije bilo potrebe za dodijeljenom memorijom. Mehanizam Memory Reclamation omogućuje vraćanje oslobođene memorije u glavni OS i automatsko smanjenje veličine memorije virtualnog stroja. Ovo vraća ne samo memoriju koju su oslobodili korisnički procesi, već i memoriju korištenu za predmemoriju u jezgri Linuxa. Na primjer, s visokom aktivnošću diska, povećava se veličina predmemorije stranice, u koju se pohranjuje sadržaj datoteka kada je datotečni sustav pokrenut. Nakon izvođenja "echo 1 > /proc/sys/vm/drop_caches" predmemorija se može obrisati i memorija se može vratiti u glavni OS.

Implementacija Memory Reclamation-a temelji se na
zakrpa, koji su Intelovi inženjeri predložili za uključivanje u glavnu jezgru Linuxa kako bi se proširile mogućnosti upravljačkog programa virtio-balloon i za sustav upravljanja memorijom. Navedena zakrpa dizajnirana je za korištenje u svim gostujućim sustavima za vraćanje neiskorištenih memorijskih stranica u glavni sustav i može se koristiti s različitim hipervizorima. U slučaju WSL2, zakrpa je prilagođena za vraćanje memorije hipervizoru Hyper-V.

Podsjetimo da je drugo izdanje WSL drugačiji isporuka potpunog Linux kernela umjesto emulatora koji prevodi Linux sistemske pozive u Windows sistemske pozive u hodu. Isporučuje se u WSL2 Linux kernel Utemeljeno na izdanju 4.19, koje radi u Windows okruženju koristeći virtualni stroj koji već radi u Azureu. Ažuriranja Linux kernela isporučuju se putem mehanizma Windows Update i testiraju na Microsoftovoj kontinuiranoj integracijskoj infrastrukturi. Zakrpe kernela specifične za WSL2 uključuju optimizacije za smanjenje vremena pokretanja kernela, smanjenje potrošnje memorije i ostavljanje kernela s minimalnim potrebnim skupom upravljačkih programa i podsustava.

Izvor: opennet.ru

Dodajte komentar