Bash on Windowsが強化、Linux版のJavaやGo、PostgreSQLなどもWindowsで実行可能に。3月リリースのWindows 10 Creators Updateで
マイクロソフトは来月(2017年3月)登場予定のWindows 10の大型アップデート「Windows 10 Creators Update」で、Windowsに取り込んだLinux機能の「Bash on Ubuntu on Windows」とその背後にある「Windows Subsystem for Linux」(以下、両者をまとめて「Bash on Windows」に省略)の強化を行い、これまで実行が困難だったLinux版のJavaやPostgreSQLなども実行可能になることを、2月8日(日本時間2月9日未明)のイベント「Windows Developer Day - Creators Update」で明らかにしました。
これまでのBash on Windowsは、Linux版のNode.js、Python、RubyなどのアプリケーションやMySQLなどが実行可能でしたが、Javaの実行は困難でした。
Windows 10 Creators UpdateによってBash on Windowsの完成度がさらに高まり、Linux版のJava、C++やCから生成されたバイナリなどが実行可能、さらにGo、Rustにも対応し、PostgreSQLも近々実行可能になると説明されています。
Hear what's new in Bash and the Windows Subsystem for Linux right here with @richturn_ms! See more #WindowsDevDay: https://t.co/dX2np9g3uY pic.twitter.com/Q0nvToU7t4
— Windows Developer (@windowsdev) 2017年2月8日
Bash on Windowsとは、Windows 10の内部でUbuntu Linuxを実行することでWindows上でLinuxバイナリを実行可能にし、またBashなどの各種ツールも利用可能にします。Windows 10内部で本物のUbuntu Linuxを実行することで実現されており、その仕組みとしてUbuntu Linuxのカーネルに相当する機能をWindowsカーネルでエミュレーションする「Windows Subsystem for Linux」が用いられています。
Bash on Windowsは1年前の2016年3月に開催されたイベント「Build 2016」で突如発表され、8月にリリースされたWindows 10の大型アップデート「Windows 10 Anniversary Update」でテクニカルプレビューとして追加されました。
Windows 10 Creators Updateによる強化では、JavaやPostgreSQLなどが実行可能になるほか、コンソール機能も改善され、従来の16色から1600万色へとサポートする色数が大幅に増加。
VTコマンドのサポートも強化。これらによってテキストベースでリッチな表現を行っていたLinuxアプリケーションのUIも忠実に表現できるようになりました。
またbashからWindowsアプリケーションの起動も可能に。下の画面ではbashからノートパッドを起動したところ。
Visual StudioからLinuxバイナリの生成、デバッグも可能に
Window 10本体だけでなく、Visual StudioでのLinux対応も強化が発表されました。
Visual C++ for Linuxでは、Visual Studioで開発中のC++のコードを、sshを通じてターゲットとなるLinuxマシンへ送り、そこでリンクやコンパイルなどのビルドを実行し、本物のLinuxバイナリを生成可能になりました。
ターゲットとなるLinuxマシンは仮想マシンやベアメタル上のLinux、そしてBash on Windowsも可能。
それだけでなく、Visual Studioから同様にsshを通じてターゲットマシン上でgdbを起動し、Linuxバイナリのデバッグも可能です。gdbの機能を用いてVisual Studio上でシングルステップ、ブレークポイントの設定、変数のインスペクションなどが利用可能。
これによりVisual Studioを利用したまま、Linuxに対応したC++のアプリケーションの開発、デバッグが可能になり、さらにBash on Windowsを利用すればそのままWindows 10でそのLinuxバイナリが実行できることになります。
Bash on WindowsやVisual StudioのLinux対応強化は、マイクロソフトが貪欲にLinuxをWindowsへ取り込んでいる、すなわちLinux開発者を貪欲にWindowsに取り込もうとしている姿勢の表れであり、Visual StudioとWindowsを、あらゆるデベロッパー、あらゆるアプリケーション、あらゆるプラットフォームに対応していく存在にするという同社が目指す方向に着実に推し進めていることを示しています。
あわせて読みたい
マイクロソフト、「Windows SDK for Google Analytics」発表。Windowsアプリの利用状況をGoogle Analyticsで分析可能に
≪前の記事
「Kubernetesはオープンソースのコンテナオーケストレーションのデファクトになった」と、CoreOSがfleetの開発を終了、代わりにKubernetes採用を発表