Microsoft implementou en WSL2 (Windows Subsystem for Linux) a devolución da memoria ao sistema

Microsoft anunciou sobre a expansión das capacidades da capa WSL2 (Windows Subsystem for Linux), que garante o lanzamento de ficheiros executables de Linux en Windows. En construcións experimentais Windows Inside (build 19013) na capa WSL2, apareceu o soporte para devolver memoria ao sistema (Recuperación de memoria) liberada por procesos que se executan nun ambiente baseado no núcleo Linux.

Anteriormente, no caso de aumentar o consumo de memoria por parte das aplicacións ou do núcleo, a memoria asignábase á máquina virtual WSL2, pero despois permaneceu fixada e non se devolveu ao sistema, mesmo despois de que finalizase o proceso de uso intensivo de recursos. non houbo máis necesidade da memoria asignada. O mecanismo de recuperación de memoria permítelle devolver a memoria liberada ao sistema operativo principal e reducir automaticamente o tamaño da memoria da máquina virtual. Isto devolve non só a memoria liberada polos procesos do usuario, senón tamén a memoria utilizada para almacenar na caché no núcleo de Linux. Por exemplo, cunha actividade de disco alta, o tamaño da caché da páxina aumenta, na que o contido dos ficheiros se deposita cando o sistema de ficheiros está en execución. Despois de executar "echo 1 > /proc/sys/vm/drop_caches" pódese borrar a caché e devolver a memoria ao sistema operativo principal.

A implementación de Memory Reclamation baséase en
parche, proposto polos enxeñeiros de Intel para a súa inclusión no núcleo principal de Linux co fin de ampliar as capacidades do controlador virtio-balloon e para o sistema de xestión de memoria. O parche especificado está deseñado para usar en calquera sistema convidado para devolver páxinas de memoria non utilizadas ao sistema anfitrión e pódese usar con varios hipervisores. No caso de WSL2, o parche está adaptado para devolver memoria ao hipervisor Hyper-V.

Recordemos que a segunda edición de WSL diferente entrega dun núcleo de Linux completo en lugar dun emulador que traduce as chamadas do sistema Linux en chamadas do sistema de Windows sobre a marcha. Entregado en WSL2 kernel de Linux Baseado na versión 4.19, que se executa nun ambiente Windows usando unha máquina virtual que xa se executa en Azure. As actualizacións do núcleo de Linux entréganse a través do mecanismo de actualización de Windows e probáronse coa infraestrutura de integración continua de Microsoft. Os parches do núcleo específicos de WSL2 inclúen optimizacións para reducir o tempo de inicio do núcleo, reducir o consumo de memoria e deixar o núcleo co conxunto mínimo necesario de controladores e subsistemas.

Fonte: opennet.ru

Engadir un comentario