Comments 36
Вообще Pycharm отлично работает с WSL. Так же как и с докер контейнером, окружением анаконды и даже с сервером по ssh. При создании проекта просто нужно настроить интерпритатор.
- Hyper-V, паравиртуализацию линукса туда завезли ещё в 2008 году емнип,
- Протокол 9P, который тоже был с нами уже очень давно, в куче конкретных реализаций под пермиссивными лицензиями, поэтому использовался, например, в VirtualBox, libvirt, QEMU на Windows.
Понятно, что паравиртуализация − это медленно и затратно по сравнению с нативным выполнением; сетевая ФС тоже имеет кучу недостатков, начиная от производительности и кончая необходимостью для доступа к файлам держать клиента запущенным.
И первая реализация WSL вроде как должна была победить эти недостатки за счёт нативной подсистемы исполнения Linux-бинарников, как это сделано в Wine. Но MS выбросил WSL 1 после года разработки (и весьма неплохих результатов, если сравнивать с развитием того же Wine) и сделал откат к технологиям, по сути уже существовавшим как commodity.
Так за что именно хвалят сейчас MS?
developer.mozilla.org/ru/docs/Learn/Server-side/Django/development_environment
В wsl1 они продвинулись достаточно далеко. Но упёрлись в ряд не решаемых на этом уровне проблем, таких как эмуляция сети и привилегий. iptables толком так и не заработал, а без него не работает большая часть инфраструктуры docker. Для решения нужно делать эмуляцию уровнем ниже и в wsl2 будет всамделешнее ядро.
WSL 2 намного производительный чем WSL 1. Сам активно юзаю WSL 2, там все быстрее работает, начиная от фс (той, что в образе), заканчивая любыми операциями с большим процентом сисколлов. Намного быстрее работает git, apt, yarn. Конечно, интеграция с фс хоста очень медленная (обещают исправить хоть как-то до релиза), но в общем это не критично, если вести разработку в внутренней фс (а она отлично доступна из хоста, даже лучше, чем в WSL 1). С первой проблемой пришлось бороться в виде удаления папок хоста из PATH. И вместо этого генерировать "shims" для тех екзешников.
Наталкивался на тесты, geekbench слегка меньше набирает на WSL2, чем на WSL. Но там разница в пределах 1%.
С другой стороны, моя предыдущая рабочая конфигурация была Ubuntu под VMware, после перехода на WSL2 тесты стали в 2 раза быстрее гоняться.
И ещё вызовы виндовых exe медленные. Нужны были для интеграции tmux и vim с буфером винды. Похожие проблему могут возникнуть, если захочется из консоли помониторить ресурсы винды. Задержка не сверхкритичная, но заметная.
PS: Пользуясь случаем, рекомендую ознакомиться: github.com/VSCodium/vscodium#why-does-this-exist
Современные среды разработки в организациях это не только IDE, но и средства коммуникации, планирования, документирования, аналитики, безопасности, решения юридических и финансовых вопросов. M$ предлагает массу дорогуших интегрированных инструментов, с которыми лицензии на операционную систему идут чутьли не в подарок.
Раньше говорили, что в всл будет возможность использовать gpu прямо из под всла. Сейчас такое возможно?
Из проблемного:
— тонкость использования пакетов установленных и на Windows и в Ubuntu одновременно;
— некоторые сложности настройки версий (связано со старостью Убунты) и прав внутри саб-ОС;
— проблемы зависания VSCode с включенным на нем Python Preview дополнением в работе с большими файлами (решается выключением расширения или перезагрузкой VSCode).
Windows 10 + Python = VS Code + WSL