В ближайшие дни Microsoft представит совместную с Ubuntu разработку для ОС Windows 10, которая позволяет запускать немодифицированные (пока только консольные) бинарные файлы в Windows. Суть новинки заключается в трансляции системных вызовов Linux/POSIX в вызовы Win32 API, что позволяет достичь практически родной скорости выполнения Linux приложений в среде Windows. Если не вдаваться в тонкости, то разработчики из Microsoft написали Wine наоборот.
Некоторые детали реализации:
- Все диски Windows будут тоступны через точки монтирования в /mnt.
- Сама корневая система Linux/Ubuntu будет находится в C:\Users\$USER\AppData\Local\Lxss\rootfs\
- На данный момент терминал vt100, который эмулируется для приложений Linux, реализован не полностью, поэтому такие утилиты, как byobu, screen и tmux пока не работают.
- Основа всего - Ubuntu 14.04 LTS.
- Ubuntu для Windows распространяется как приложение UWP, поэтому работает только в Windows 10.
Почему Microsoft пошла на это? Чтобы привлечь тех разработчиков, для которых cmd.exe и PowerShell не являются достаточными, а cygwin не обеспечивает достаточной скорости.