لماذا يكون WSL 2 أسرع 13 مرة من WSL: مرات الظهور من Insider Preview

تقوم Microsoft بإعداد إصدار تحديث Windows May 2020 (20H1). سيحتوي هذا التحديث على بعض التحسينات الرائعة في واجهة المستخدم، ولكن الأهم بالنسبة للمطورين والآخرين في الإصدار الجديد من Windows هو أنه WSL 2 (نظام Windows الفرعي لنظام التشغيل Linux). هذه معلومات ذات صلة لأولئك الذين أرادوا التبديل إلى نظام التشغيل Windows، لكنهم لم يجرؤوا على ذلك.

قام Dave Rupert بتثبيت WSL 2 على كمبيوتره المحمول Surface مقاس 13 بوصة والنتائج الأولى
مفاجأة سارة:

لماذا يكون WSL 2 أسرع 13 مرة من WSL: مرات الظهور من Insider Preview

الإصدار الثاني من WSL أسرع 13 مرة من الإصدار الأول! لا تحصل كل يوم على زيادة في الأداء بمقدار 13 مرة مجانًا. شعرت بقشعريرة وذرفت دمعة رجولية عندما رأيت هذه النتائج لأول مرة. لماذا؟ حسنًا، كنت في الغالب حزينًا على الوقت الضائع الذي تراكم على مدى 5 سنوات من العمل مع الإصدار الأول من WSL.

وهذه ليست مجرد أرقام. في WSL 2، تثبيت npm، والبناء، والتعبئة، وعرض الملفات، وإعادة تحميل الوحدات الساخنة، وبدء تشغيل الخوادم - أصبح كل شيء أستخدمه يوميًا تقريبًا كمطور ويب أسرع بكثير. يبدو الأمر وكأنك تستخدم جهاز Mac مرة أخرى (أو ربما أفضل، نظرًا لأن Apple كانت تحد بشكل جذري من معالجاتها لصالح عمر بطارية أفضل على مدار السنوات القليلة الماضية).

من أين تأتي هذه الرشاقة؟

كيف حققوا زيادة في الإنتاجية بمقدار 13 مرة؟ في السابق، عندما فكرت في التبديل إلى نظام التشغيل Mac، قمت أيضًا بإلقاء بعض الخيارات، على الرغم من أنها كانت على مستوى الافتراضات فقط. الحقيقة هي أن الكتابة على القرص ومكالمات نظام Linux كانت باهظة الثمن (من حيث تكاليف الوقت) بسبب بنية الإصدار الأول من WSL. والآن خمن ما الذي يعتمد عليه تطوير الويب الحديث بشكل كبير؟ نعم. عندما تقوم بتجميع مجموعة من التبعيات ومقتطفات التعليمات البرمجية في كل مرة تقوم فيها بحفظ ملف، فإنك في الواقع تقوم بالكثير من عمليات الكتابة على القرص واستدعاءات النظام لعشرات الآلاف من الملفات.

بمجرد أن تتعلم هذا بالطريقة الصعبة، فمن الصعب أن تنسى. تبدأ في الشعور بالاكتئاب تدريجيًا عندما تتخيل مدى بطء الأمور وحزنها. وتدرك أن عالمك لن يكون كما كان بعد الآن وأن الأداة التي أعجبتك لم تعد تبدو مفيدة أو فعالة.

لحسن الحظ، قام فريق WSL بالمخاطرة وأعاد كتابة النظام الفرعي بالكامل. في WSL 2، تم حل هذه المشكلات: قام المطورون ببناء جهاز Linux الظاهري الخاص بهم في Windows وتفويض عمليات الملفات إلى محرك أقراص الشبكة VHD (قرص الأجهزة الظاهري). والمقايضة هي أنه في المرة الأولى التي تقوم فيها بتشغيله، عليك قضاء بعض الوقت في تشغيل الجهاز الافتراضي. يتم قياس هذه المرة بالمللي ثانية وبالكاد ملحوظة بالنسبة لي شخصيًا. على سبيل المثال، أنا أنتظر بسرور، لأنني أعرف لماذا كل هذا.

أين ستعيش الملفات الآن؟

لتحقيق الاستفادة الكاملة من WSL 2، ستحتاج إلى نقل ملفات مشروعك من /mnt/c/Users/<اسم المستخدم>/ إلى الدليل الرئيسي الجديد ~/لينكس على VHD الجديد. يمكنك رؤية محتويات محرك الأقراص هذا عبر الإنترنت من خلال الانتقال إلى \\wsl$\<اسم التوزيع>\<اسم المستخدم>\home أو عن طريق إدخال الأمر EXPLORER.EXE من Bash Shell الخاص بك.

هذا هو نظام ملفات Linux حقيقي، وهو يعمل ويتصرف كما تتوقع. لقد قمت بإنشاء مجلد ~ / المشاريع، وهو المكان الذي توجد فيه جميع مستودعات مشاريعي ثم أفتح المشاريع في Visual Studio Code باستخدام أمر التعليمات البرمجية.

ماذا عن كود VS؟

تثبيت WSLتوسع للتطوير عن بعد على VS Code (VS Code Remote - WSL) هي المرحلة الأخيرة التي تضمن العمل المريح للمطور. يسمح الامتداد لـ VS Code بتنفيذ جميع عملياته (أوامر git، ووحدات التحكم، وتثبيت الامتدادات، وما إلى ذلك) من خلال التفاعل مباشرة مع جهاز Linux الظاهري. وهذا يجعل العملية برمتها مستقلة للغاية.

في البداية كنت منزعجًا بعض الشيء بشأن الاضطرار إلى تثبيت هذا الامتداد لأنني كنت بحاجة إلى إعادة تثبيت ما قمت بتثبيته وتهيئته من قبل. لكنني الآن أقدر ذلك نظرًا لوجود طبقة تصور خاصة توضح البيئة التي أعمل فيها والمكان الذي توجد فيه ملفاتي. أدى هذا إلى جعل عملية تطوير الويب لنظام Windows أكثر شفافية وجعل استخدام واجهة مستخدم التحكم في الإصدار في VS Code أسهل بكثير.

دموع السعادة والأمل بمستقبل مشرق

لا يسعني إلا أن أشعر بالإثارة بشأن الإصدار التالي من تحديث Windows لشهر مايو 2020 ونظام Linux الفرعي المُحسّن الذي يتم طرحه للتو على جهاز الكمبيوتر الشخصي القوي المخصص للألعاب. قد يكون هناك بعض المشاكل الأخرى التي لا أعرف عنها بعد، ولكن بعد ذلك معاينة من الداخل وخلصت إلى أن فريق WSL حل معظم المشاكل.

وبالإضافة إلى ذلك، لا ننسى ذلك نوافذ الطرفية جيد ايضا! كان الأمر كما لو أنهم سمعوا شكواي بشأن عدم وجود علامات تبويب وإعدادات JSON والحاجة إلى "الشعور بالهدوء" في Windows. لا يزال الأمر يبدو غريبًا، ولكن ربما تكون Windows Terminal هي أفضل محطة لنظام Windows.

بعد أن عملت على Windows لمدة 5 سنوات، مررت بالكثير: عدم القدرة على تثبيت Rails، والصراع مع أغلفة Cygwin الاصطناعية. كان لدي مقعد في الصف الأمامي في نفس مؤتمر Build 2016 عندما أعلنت Microsoft عن الإصدار الأول من WSL. وبعد ذلك بدأت آمل أن يصل تطوير الويب على Windows أخيرًا إلى مستوى جديد. مما لا شك فيه أن WSL 2 هو أكبر تحسن رأيته منذ ذلك الحين ويبدو أننا على أعتاب حقبة جديدة.

كإعلان

إذا كان العمل يتطلب خوادم ويندوز، فأنت بالتأكيد لنا — التثبيت التلقائي لنظام التشغيل Windows Server 2012 أو 2016 أو 2019 على الخطط التي تحتوي على ذاكرة وصول عشوائي (RAM) سعة 2 جيجابايت أو أعلى، ويكون الترخيص متضمنًا بالفعل في السعر. المجموع من 21 روبل يوميا! لدينا أيضًا خوادم أبدية 😉

لماذا يكون WSL 2 أسرع 13 مرة من WSL: مرات الظهور من Insider Preview

المصدر: www.habr.com

إضافة تعليق