Microsoft готує випуск Windows May 2020 Update (20H1). Це оновлення міститиме кілька приємних поліпшень інтерфейсу користувача, але для розробників та інших присвячених важливіше те, що в новій версії Windows з'явиться
Dave Rupert встановив WSL 2 на свій 13-дюймовий ноутбук Surface та перші результати
приємно здивували:
Друга версія WSL у 13 разів швидше за першу! Не щодня ви безкоштовно отримуєте 13-кратне підвищення продуктивності. Я відчув озноб і промовив скупу чоловічу сльозу, коли вперше побачив ці результати. Чому? Ну, в основному, я оплакував той втрачений час, який накопичився за 5 років роботи з першою версією WSL.
І це не просто цифри. У WSL 2 установка npm, збирання, упаковка, перегляд файлів, перезавантаження гарячих модулів, запуск серверів - майже все, що я щодня використовую як веб-розробник, почало працювати значно швидше. За відчуттями це схоже на те, як би я знову сів за Mac (або, можливо, краще, тому що Apple останні кілька років радикально обмежує свої процесори на користь збільшення часу автономної роботи).
Звідки така спритність?
Як вони досягли 13-кратного зростання продуктивності? Раніше, коли я задумався про перехід на Mac, я теж накидав якісь варіанти, щоправда, суто на рівні припущень. Справа в тому, що запис на диск та системні виклики Linux обходилися досить дорого (з точки зору часових витрат) через архітектуру першої версії WSL. І тепер вгадайте, на що значною мірою спирається сучасна веб-технологія? Так. Коли ви збираєте разом купу залежностей і фрагментів коду при кожному збереженні файлу, ви насправді виконуєте багато операцій запису на диск і системних викликів для десятків тисяч файлів.
Як тільки ви дізнаєтеся про це на своєму гіркому досвіді, після цього важко все забути. Ви починаєте поступово впадати в депресію, коли уявляєте, наскільки повільно та сумно все це працює. І ви розумієте, що ваш світ більше не буде колишнім і інструмент, який вам подобався, більше не здається корисним та ефективним.
На щастя, команда WSL пішла на ризик та повністю переписала підсистему. У WSL 2 ці проблеми було вирішено: розробники вбудували у Windows власну віртуальну машину Linux і доручили файлові операції мережному диску VHD (Virtual Hardware Disk). Компроміс полягає в тому, що при першому запуску потрібно витратити час, щоб розкрутити віртуальну машину. Цей час обчислюється мілісекундами і особисто для мене ледь помітно. Я, наприклад, чекаю із задоволенням, бо знаю, заради чого це все.
Де тепер житимуть файли?
Щоб повною мірою скористатися перевагами WSL 2, ви захочете перемістити файли проекту з /mnt/c/Users/<ім'я користувача>/ у новий домашній каталог ~/Linux на новому VHD. Ви можете побачити вміст цього диска в мережі, перейшовши в \\ wsl $ \ <ім'я дистрибутива> \ <ім'я користувача> \ home або ввівши команду explorer.exe із вашої оболонки Bash.
Це справжня файлова система Linux, і вона діє і поводиться так, як ви очікуєте. Я створив папку ~/проекти, в якій живуть всі мої репозиторії проектів, а потім я відкриваю проекти в Visual Studio Code, використовуючи команду code.
А що з VS Code?
Встановлення WSL-
Спочатку я був трохи засмучений через необхідність встановлення цього розширення, тому що мені потрібно було перевстановити те, що я встановив та налаштував до цього. Але тепер я гідно оцінив це, тому що з'явився спеціальний шар візуалізації який показує, в якому середовищі я працюю і де живуть мої файли. Це зробило процес веб-розробки на Windows більш прозорим і набагато спростило використання інтерфейсу користувача для управління версіями в VS Code.
Сльози щастя та надія на світле майбутнє
Мене не залишає відчуття радості від думки про наступний реліз Windows May 2020 Update і оптимізованої підсистеми Linux, яка просто літає на моєму потужному ігровому комп'ютері. Можливо, є ще деякі проблеми, про які я поки що не знаю, але після
Крім того, не варто забувати, що
Пропрацювавши в Windows 5 років, я багато пережив: нездатність встановити Rails, боротьбу зі штучними оболонками Cygwin. Я сидів у першому ряду на тій самій конференції Build 2016, коли Microsoft анонсувала першу версію WSL. І тоді в мене з'явилася надія, що веб-розробка Windows нарешті вийде на новий рівень. Без сумніву, WSL 2 - найбільше поліпшення, яке я бачив з того часу, і, схоже, ми на порозі нової ери.
На правах реклами
Якщо для роботи потрібні Windows-сервери, то вам однозначно
Джерело: habr.com