BUILD2016 Microsoft は、Linux Bash シェル コマンド ラインを Windows 10 に導入し、Windows サブシステム上でネイティブ Ubuntu バイナリとして実行します。
開発ディレクターのケビン・ガロ氏は、サンフランシスコで開催されたマイクロソフトの開発者カンファレンス「Build 2016」の基調講演で、このシェルのデモを行いました。ガロ氏によると、主な目標は、開発者がWindows上で作業する際にLinuxのツールやユーティリティを利用できるようにすることだという。
Ubuntu のダスティン・カークランド氏は、これは「基本的に Linux システムコールを Windows OS システムコールにリアルタイムで変換する」ものであり、「開発者にとってのオープンソースの重要性についての Microsoft によるほぼ超現実的な支持」だと付け加えた。
もちろん、Bashシェルだけでなく、Linuxの非GUIユーティリティやアプリケーションも動作します。Kirkland氏は、「Ubuntuアーカイブで入手可能な数万ものバイナリパッケージのほとんど」が動作すると述べています。cp、find、grep、sshなどのユーティリティだけでなく、aptitude、apache、mysql、python、perl、ruby、php、gcc、tarなども動作します。
Windows ドライブは「/mnt 直下に読み取り/書き込みでマウント」されますが、Ubuntu ファイルシステム ファイルは Windows ではユーザーのアプリケーション データ フォルダー [c:\users\[username]\AppData\Local\Lxss\rootfs\] の下に表示されます。
カークランドはApacheについて言及しただろうか?確かにそうだ。Ubuntu派のカークランドの重視する点は、ガロのそれとは異なっている。ガロは開発者をWindowsに呼び込むという観点から語るのに対し、カークランドはUbuntuの普及拡大と、Windowsアプリケーションに代わるオープンソースの選択肢の推進を重視する。
Windows で実行される強力なネイティブ Linux サブシステムは、開発者だけでなく、Windows と Linux で多くのユーティリティを使用できるようになるシステム管理者からも歓迎されるでしょう。
しかし、その影響は甚大です。マイクロソフトは、開発者や管理者が業務で使用するWindowsアプリケーションの数を増やすのではなく、減らす道も開けているからです。もちろん、これらのアプリケーションがマイクロソフトのAzureクラウド上で動作すれば、どちらの場合でもマイクロソフトが勝利を収める可能性はあります。®