Microsoft ha implementato in WSL2 (Windows Subsystem for Linux) il recupero della memoria nel sistema

Azienda Microsoft ha annunciato le funzionalità della piattaforma WSL2 (Windows Subsystem for Linux), che consente l'esecuzione di file eseguibili Linux su Windows. Nelle build sperimentali Windows Insider (build 19013) nella piattaforma WSL2 è stata introdotta la supporto per il recupero della memoria (Memory Reclamation), liberata dai processi in esecuzione in un ambiente basato su kernel Linux.

In precedenza, in caso di aumenti dell'uso della memoria da parte delle applicazioni o del kernel, la memoria veniva assegnata alla macchina virtuale WSL2, ma successivamente rimaneva bloccata e non veniva restituita al sistema, anche dopo il termine di un processo intensivo in risorse e l'assenza di ulteriori necessità di memoria allocata. Il meccanismo Memory Reclamation consente di restituire la memoria liberata al sistema operativo principale e di ridurre automaticamente la dimensione della memoria della macchina virtuale. In tal modo, viene restituita non solo la memoria liberata dai processi utente, ma anche quella utilizzata per la memorizzazione nella cache nel kernel Linux. Ad esempio, durante un'alta attività del disco, aumenta la dimensione della cache delle pagine, nella quale si accumula il contenuto dei file durante l'operazione del file system. Dopo aver eseguito "echo 1 > /proc/sys/vm/drop_caches", è possibile svuotare la cache e restituire la memoria al sistema operativo principale.

L'implementazione di Memory Reclamation si basa su
patch, proposto dagli ingegneri Intel per l'inclusione nel kernel principale di Linux con l'obiettivo di espandere le funzionalità del driver virtio-balloon e per il sistema di gestione della memoria. La suddetta patch è progettata per essere utilizzata in qualsiasi sistema guest per restituire le pagine di memoria inutilizzate al sistema host e può essere applicata con diversi hypervisor. Nel caso di WSL2, la patch è adattata per restituire memoria all'hypervisor Hyper-V.

Ricordiamo che la seconda edizione di WSL si distingue prevede la fornitura di un kernel Linux completo invece di un emulatore che traduce al volo le chiamate di sistema Linux in chiamate di sistema Windows. Quello fornito in WSL2 è il kernel Linux basato sulla release 4.19, che viene eseguito in un ambiente Windows tramite una macchina virtuale già utilizzata in Azure. Gli aggiornamenti per il kernel Linux vengono forniti tramite il meccanismo di Windows Update e testati nell'infrastruttura di integrazione continua di Microsoft. Le patch specifiche per WSL2 applicate al kernel includono ottimizzazioni per ridurre i tempi di avvio del kernel, diminuire il consumo di memoria e mantenere nel kernel il minimo set necessario di driver e sottosistemi.

Fonte: opennet.ru

Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS 🔥 Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS | ProHoster