WSL2 heeft al Memory Reclaim

WSL2

De Microsoft-ontwikkelaars hebben de uitbreiding van de WSL2-laag aangekondigd (Windows-subsysteem voor Linux) in Windows Insider Experimental Builds (Build 19013). Daarin kondigen ze dat aan hebben compatibiliteit toegevoegd om een ​​geheugensysteem terug te sturen (Herstel van geheugen), vrijgegeven door processen die worden uitgevoerd in een Linux-kernel-gebaseerde omgeving.

Voorheen bij een hoger geheugengebruik door toepassingen of de kernel, geheugen het was toegewezen aan de virtuele WSL2-machine, maar daarna bleef het vast en keerde niet terug naar het systeem, zelfs na de voltooiing van het resource-intensieve proces en de afwezigheid van verhoogde behoefte aan toegewezen geheugen.

Nu met het terugwinnen van geheugen in WSL 2, wanneer geheugen in Linux niet langer nodig is, kan de host worden geïnformeerd waar het zal worden vrijgemaakt en zal uw WSL 2 VM in geheugen worden verkleind.

Dankzij het mechanisme voor het terugwinnen van geheugen kan vrijgekomen geheugen worden teruggebracht naar het hoofdbesturingssysteem en automatisch de geheugengrootte van de virtuele machine verkleinen. In dit geval wordt niet alleen het geheugen dat is vrijgemaakt door gebruikersprocessen geretourneerd, maar ook het geheugen dat wordt gebruikt voor caching in de Linux-kernel.

Gebruikersprocessen zijn niet de enige dingen die geheugen gebruiken op de virtuele Linux-machine. De Linux-kernel gebruikt ook veel caches, waaronder een paginacache, die bestandsinhoud opslaat om de prestaties van het bestandssysteem te verbeteren. Laten we nog een voorbeeld uit de echte wereld bekijken om te zien hoe dit in het spel komt.

Bv bij hoge schijfactiviteit neemt de cachegrootte van de pagina toe, waarin de inhoud van de bestanden wordt geregeld tijdens de werking van de FS. Na het uitvoeren van "echo 1> / proc / sys / vm / drop_caches", kan de cache worden gewist en keert het geheugen terug naar het hoofdbesturingssysteem.

De implementatie van geheugenterugwinning is gebaseerd op een patch die door Intel-ingenieurs is voorgesteld voor opname in de belangrijkste Linux-kernel om de mogelijkheden van de virtio-ballon-driver en het geheugenbeheersysteem uit te breiden.

Deze functie wordt aangestuurd door een Linux-kernelpatch die het mogelijk maakt om kleine aaneengesloten geheugenblokken terug te sturen naar de hostmachine wanneer ze niet langer nodig zijn in de Linux-gast. We hebben de Linux-kernel in WSL2 bijgewerkt met deze patch en Hyper-V aangepast om deze functie voor paginarapportage te ondersteunen.

De gespecificeerde patch is ontworpen om op elk gastsysteem te worden gebruikt om ongebruikte geheugenpagina's terug te sturen naar het hostsysteem, en kan worden gebruikt met meerdere hypervisors. In het geval van WSL2, de patch is aangepast om geheugen terug te sturen naar de Hyper-V hypervisor.

Het is belangrijk te onthouden dat de tweede editie van WSL verschilt in het leveren van een volledige Linux-kernel in plaats van een emulator on the fly die Linux-systeemoproepen vertaalt naar Windows-systeemoproepen.

WSL 2 is een nieuwe versie van de architectuur diee staat het Windows-subsysteem voor Linux toe om de Linux ELF64-binaire bestanden op Windows uit te voeren​ Deze nieuwe versie van WSL 2 gebruikt Hyper-V-functies om een ​​lichtgewicht virtuele machine te maken met een minimale Linux-kernel.

De Linux-kernel die in WSL2 wordt geleverd, is gebaseerd op versie 4.19, die wordt uitgevoerd in een Windows-omgeving met behulp van een virtuele machine die al in Azure wordt gebruikt. Updates voor de Linux-kernel worden geleverd via de Windows Update-engine en worden getest op de continue integratie-infrastructuur van Microsoft.

WSL2-specifieke patches die in de kernel worden gebruikt, omvatten optimalisaties om de opstarttijd van de kernel te verkorten, het geheugenverbruik te verminderen en de kernel te laten met de minimaal vereiste set stuurprogramma's en subsystemen.

Als je er meer details over wilt weten je kunt ze bekijken in de originele post. De link is dit.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.