يحتوي WSL 2 الآن على ميزة استعادة الذاكرة
مع إصدار Windows 10 Build 18917 ، قدمت Microsoft WSL 2 إلى Insiders ، نظام Windows الفرعي لنظام Linux 2. إنه يشحن نواة Linux حقيقية مع Windows والتي ستجعل التوافق الكامل لمكالمات النظام ممكنًا. هذه هي المرة الأولى التي يتم فيها شحن Linux kernel مع Windows. يضيف Windows 10 build 19013 ميزة أخرى رائعة لـ WSL 2 - استعادة الذاكرة ، والتي تسمح للنظام المضيف بإعادة استخدام الذاكرة التي لم تعد بحاجة إليها من قبل أي عملية لينكس.
الإعلانات
في السابق ، عندما تنمو احتياجات الذاكرة الخاصة بالجهاز الظاهري WSL2 (VM) ، إما من خلال سير عملك أو من خلال Linux kernel ، فإن الذاكرة الإجمالية المخصصة لجهاز VM ستنمو أيضًا من خلال تخصيص المزيد من الذاكرة من مضيف. ولكن بمجرد الانتهاء من سير العمل ، لن يتم تحرير تلك الذاكرة التي لم تعد بحاجة إليها بواسطة سير العمل مرة أخرى إلى المضيف. الآن مع استعادة الذاكرة في WSL 2 ، عندما لا تكون هناك حاجة للذاكرة في Linux ، يمكن إبلاغ المضيف مرة أخرى حيث سيتم تحريرها وسيتقلص WSL 2 VM في حجم الذاكرة.
قبل:
بعد، بعدما:
تحقق من الفيديو التالي:
كيف تعمل
هذه الميزة مدعومة من لينكس نواة التصحيح يسمح بإعادة كتل صغيرة متجاورة من الذاكرة إلى الجهاز المضيف عندما لا تكون هناك حاجة إليها في ضيف Linux. قام فريق WSL بتحديث Linux kernel في WSL2 لتضمين هذا التصحيح ، وتعديل Hyper-V لدعم ميزة الإبلاغ عن هذه الصفحة. من أجل إعادة أكبر قدر ممكن من الذاكرة إلى المضيف ، تقوم WSL بضغط الذاكرة بشكل دوري لضمان توفر الذاكرة الخالية في كتل متجاورة. يعمل هذا فقط عندما تكون وحدة المعالجة المركزية الخاصة بك في وضع الخمول. يمكنك معرفة وقت حدوث ذلك من خلال البحث عن رسالة "WSL2: تنفيذ ضغط الذاكرة" داخل إخراج dmesg
أمر. إذا كنت مستخدمًا متميزًا ، يمكنك تهيئة هذا السلوك عن طريق تعديل القيم في .wslconfig. رجاء تاكد من ملاحظات إصدار WSL 19013 لرؤية هذه الخيارات. بدلاً من ذلك ، إذا كنت ترغب في تشغيل أمر Linux هذا يدويًا ، يمكنك تشغيل الأمر صدى 1> / proc / sys / vm / compact_memory
كمستخدم جذر.
يمكنك العثور على مزيد من التفاصيل الفنية والأمثلة في مشاركة مدونة رسمية.