Я читал в Интернете, что Ubuntu и bash выходят на Windows 10. Я также читал, что это не эмулятор или виртуальная машина, работающая поверх Windows, а что-то еще. Так как именно все это объединяется? И действительно ли он будет таким же стабильным и удобным для пользователя, как bash в Ubuntu?
windows-subsystem-for-linux
Maaverik
источник
источник
Ответы:
Это не эмулятор так же, как WINE - не эмулятор. То есть они добавили интерфейс ядра Linux к своему ядру Windows. Когда приложение пытается использовать ядро Linux, оно переводится в собственный системный вызов Windows, а любые ответы от ядра переводятся в собственный ответ Linux. Таким образом, приложение думает, что оно работает на ядре Linux и, следовательно, не нуждается в модификации.
Тем не менее, это чисто технология Windows, поэтому, если вы хотите получить больше информации, вы должны получить их из группы поддержки Windows или чего-то еще. Windows по-прежнему является проприетарной ОС, поэтому я ожидаю ограниченного количества деталей.
С точки зрения Ubuntu, мы просто работаем на примитивном ядре Linux, что сравнимо с работой современного рабочего стола на примитивном X-сервере. Если вы используете только функции, поддерживаемые поддельным ядром, оно будет стабильным и удобным для пользователя. Если вы используете неподдерживаемые функции, это будет нестабильно.
Это не будет где-либо рядом с полным опытом Ubuntu в ближайшее время.
источник
Для тех, кому интересно, как работает подсистема Windows для Linux (WSL) и как она работает с собственными двоичными файлами Linux ELF-64, мы опубликовали серию постов в блоге и сопровождающих их видео, объясняющих архитектуру WSL, процессы, системные вызовы и поддержку файловой системы. ,
Скотт Хансельман также сделал отличное видео о процессе установки и о том, как настроить Bash в Ubuntu для Windows:
НТН
источник
Части bash очень хорошо работают в WSL.
Части ядра не там. Например, нет
/sys/class/backlight/intel_backlight/brightness
доступа к настройке яркости экрана. Есть команды Powershell, которые можно легко вызвать, если вы не возражаете против очень длинных имен полей в стиле COBOL. MS Powershell можно вызывать прямо изнутри bash. Таким образом, вы можете сказать, что мощные функции Windows теперь встроены в bash. По тому же признаку MS Powershell может назвать bash. Так что, если верно Powershell получает доступ к функциям , какgrep
,awk
,head
,tail
и т.д.Графический интерфейс для Ubuntu Desktop (
gedit
,nautilus
и т. Д.) Работает только после установкиVcXsrv
или чего-то подобного.Обмен файлами между Linux и Windows WSL сложен в настройке. Когда при перемещении файлов между общей папкой WSL + Linux NTFS у меня возникали некоторые «странные» права доступа к файлам либо из-за моего невежества, либо из-за недостатков программного обеспечения.
Скорость в WSL намного ниже, чем в Ubuntu. На самом деле вы можете увидеть экран закрашивать символ за символом, когда вы запускаете
cal
илиtoilet
: Каковы различия между Windows Bash и Cygwin?Я думаю, что WSL - хороший продукт, и мне нравится возиться с ним при двойной загрузке в Windows-World. Он никогда не станет отличным продуктом из-за отсутствия финансирования у MS, и они действительно не хотят иметь отличный дистрибутив Linux Free-Ware. Если бы у вас было достаточно оперативной памяти, вы, вероятно, были бы счастливы с виртуальной машиной. Сейчас, когда цены на оперативную память увеличатся всего на 8 ГБ, а в середине 2019 года она будет расти, я с радостью остановлюсь на WSL и пока не буду обновлять 32 ГБ ОЗУ.
Я посетил несколько форумов MS и должен сказать, что Рич Тернер и члены его команды WSL - одни из самых хороших профессионалов, которых я видел.
источник