Microsoft je implementirao u WSL2 (Windows podsistem za Linux) vraćanje memorije u sistem

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

Ranije, u slučaju povećanja potrošnje memorije od strane aplikacija ili kernela, memorija je dodijeljena WSL2 virtuelnoj mašini, ali je nakon toga ostala zakačena i nije vraćena u sistem, čak ni nakon što je proces koji zahtijeva puno resursa prekinut i postoji više nije bilo potrebe za dodijeljenom memorijom. Mehanizam Memory Reclamation omogućava vam da vratite oslobođenu memoriju u glavni OS i automatski smanjite veličinu memorije virtuelne mašine. Ovo vraća ne samo memoriju oslobođenu korisničkim procesima, već i memoriju koja se koristi za keširanje u Linux kernelu. Na primjer, sa visokom aktivnošću diska, povećava se veličina keš memorije stranica, u koju se sadržaj datoteka pohranjuje kada je sistem datoteka pokrenut. Nakon izvršavanja "echo 1 > /proc/sys/vm/drop_caches" keš se može obrisati i memorija se može vratiti u glavni OS.

Implementacija Memory Reclamation se zasniva na
patch, koji su predložili Intelovi inženjeri za uključivanje u glavni Linux kernel kako bi se proširile mogućnosti virtio-balloon drajvera i za sistem upravljanja memorijom. Navedena zakrpa je dizajnirana za upotrebu u svim gostujućim sistemima za vraćanje neiskorištenih memorijskih stranica na host sistem i može se koristiti s raznim hipervizorima. U slučaju WSL2, zakrpa je prilagođena da vrati memoriju hipervizoru Hyper-V.

Podsjetimo da je drugo izdanje WSL-a drugačiji isporuka punopravnog Linux kernela umjesto emulatora koji prevodi Linux sistemske pozive u Windows sistemske pozive u hodu. Isporučeno u WSL2 Linux kernel Zasnovano na izdanju 4.19, koje radi u Windows okruženju koristeći virtuelnu mašinu koja je već pokrenuta u Azure-u. Ažuriranja Linux kernela se isporučuju putem Windows Update mehanizma i testiraju se u odnosu na Microsoftovu kontinuiranu integracijsku infrastrukturu. Zakrpe kernela specifične za WSL2 uključuju optimizacije za smanjenje vremena pokretanja kernela, smanjenje potrošnje memorije i ostavljanje kernela sa minimalnim potrebnim skupom drajvera i podsistema.

izvor: opennet.ru

Dodajte komentar