微軟公司 關於擴充 WSL2 層的功能(Windows 子系統 Linux),從而確保可執行檔的啟動 Linux в Windows在實驗組件中 (版本 19013)WSL2 現在支援記憶體回收,用於回收在基於核心的環境中運行的進程釋放的記憶體。 Linux.
以前,如果應用程式或核心的記憶體消耗增加,這些記憶體會被分配給 WSL2 虛擬機,但即使資源密集型進程終止且不再需要分配的內存,這些記憶體也不會返回給系統。記憶體回收機制允許將釋放的記憶體返回給宿主作業系統,並自動減少虛擬機器的記憶體大小。這不僅可以回收用戶進程釋放的內存,還可以回收用於內核快取的內存。 Linux例如,在高磁碟活動的情況下,用於在檔案系統運行時儲存檔案內容的頁面快取會增加。執行「echo 1 > /proc/sys/vm/drop_caches」後,可以清除快取並將記憶體釋放給主作業系統。
記憶體回收的實作基於
由英特爾工程師提議納入主核心 Linux 為了擴展 virtio-balloon 驅動程式和記憶體管理系統的功能,此修補程式旨在用於任何客戶機系統,將未使用的記憶體頁傳回給宿主系統,並可應用於各種虛擬機器管理程式。對於 WSL2,此修補程式經過調整,可將記憶體傳回 Hyper-V 虛擬機器管理程式。
讓我們回顧一下第二屆 WSL 交付完整的內核 Linux 而不是使用能夠即時轉換系統呼叫的模擬器 Linux 進入系統調用 Windows已在 WSL2 發布 基於 4.19 版本,該版本運行於以下環境中 Windows 使用 Azure 中已在使用的虛擬機器。核心更新 Linux 透過該機制交付 Windows 更新內容正在微軟的持續整合基礎架構中進行測試。針對 WSL2 核心應用的修補程式包括最佳化措施,旨在縮短核心啟動時間、降低記憶體消耗,並保持核心中驅動程式和子系統所需的最小集合。
來源: opennet.ru
