3月30日(現地時間)、Microsoftは次期Windows 10アップデート「Anniversary Update」でbashを始めとするUNIXコマンドをサポートすることを明らかにしている(関連記事)。気になるのは、その背景やロジックだが、Linuxディストリビューション「Ubuntu」の開発や支援を行うCanonicalの公式ブログ「Ubuntu Insights」で、開発に携わった人物がその概要を説明した。
Canonical Ubuntu Product&Strategy teamのDustin Kirkland氏は、この数ヶ月間、自社とMicrosoftの間で結ばれた極秘プロジェクトに携わってきたことを明かし、「16年ぶりのWindowsは、奇妙な気分だった」と感想を述べた。また、同プロジェクトの「Windows 10のcmd.exe上でUbuntuユーザースペースとbashシェルがネイティブで動作する」という仕組みを耳にしても、理解するまでかなりの時間を要したという。
本機能はLinuxとWindowsのシステムコールをリアルタイムに変換し、コマンドを実行することで実現している。背景にはMicrosoft Researchの技術が存在し、Kirkland氏は「Ubuntu ELFバイナリをWindowsで直接実行できる」と説明しつつ、今回の準備については次のように説明した。
ラッピングしたUbuntuのルートファイルシステムを、Windowsアプリケーションパッケージ(拡張子「.appx」)としてWindowsストアにアップロードしている。その際はXMLファイルの編集や各サイズのPNG形式ファイルを用意しなければならず、非Windows開発者である同氏は、Microsoft Visual Studioの操作に苦戦したという。なお、現在はUbuntu 14.04 LTSを用いているが、近いうちにイメージファイルはUbuntu 16.04 LTSに置き換わる。
Kirkland氏は、20年以上オープンソースの世界に身を置いてきたが、今回の取り組みを「オープンソース開発者にとって夢のような出来事だ。Windows 10デスクトップをオープンソース技術で埋め尽くせる」と説明した。
阿久津良和(Cactus)