WSL 2でLinuxシステムコール100%互換を達成へ
Windows 10にはOS内でLinuxシステムをほぼ丸ごと動かすWSL(Windows Subsystem for Linux)があります。わざわざ仮想マシンを準備したりすることなくLinuxの機能をほとんどすべて利用可能です。
非常にWindows 10側と親和性の高いWSLですが、従来のバージョンのWSLには課題もありました。そこの解決を目的としたWSL 2がリリースを目指して開発中なことがマイクロソフトより発表されています。
スポンサードリンク
WSLの課題
現在のWSL、WSL 1の課題のひとつは、LinuxのOSがアプリケーションに提供する各種機能である「システムコール」(=API)の100%互換が確保されていないことです。
WSL 1ではLinuxのシステムコールをWindows側のAPIに変換することで実行可能にしています。エミュレータのようなイメージですね。この部分に限界があってLinux側に備わっているシステムコールの機能全てをカバーできていません。
また、WSLで動くLinux側のファイルシステムの性能が大きく劣っていました。
WSL 2ではこういったWSL 1の弱点の解消を狙っています。
WSL 2はコンパクトな仮想マシンに
WSL 1は言わばLinuxのエミュレータですが、WSL 2は完全なLinuxの実行環境になります。
ユーティリティ内部にコンパクトな仮想マシンの実行環境を持つようになり、その上で完全なLinuxディストリビューションを実行するイメージになります。
つまりWindows 10のOS内部に完全なLinuxを丸ごと持つようになると言うことです。
一般にLinuxシステムのメンテナンスはユーザーが手動で行なうようになっています。セキュリティアップデートもすべて含めてです。WSL 2ではこの手間が省けるようになる予定です。
カーネルの更新まで含めWindows Update経由で自動化されるため、Linuxをより安全に利用できる環境になるはずです。
Homeエディションでも利用可能になる予定
WSL 2の仮想マシンでは通常Home版には提供されない仮想化環境のHyper-Vの機能が使われます。
ですが現在マイクロソフトから公開されている情報ではWindows 10のHomeエディションでもWSL 2は利用可能になるとされていて、WSL 2実行に必要な部分のみHyper-Vの機能がHome版にも移植される形になる模様です。
また、当面はWSL 1も継続して提供され続けることになり、両方を同時に利用することも可能とされています。
ただWSL 2ではHyper-Vの機能を使っているためその他の仮想マシン構築ツールとの両立が不可能という問題があるとのこと。マイクロソフトではこの問題の解決方法を模索しているようです。
マイクロソフトはWSLを取り巻く環境の整備も順次進めていて、かなり本気で各種ソフトウェアの開発環境としてWindows 10をより魅力的なものにしようとしているようです。
WSL 2が安定して利用可能になったら、Windows 10がもっとも簡単かつ安全にLinuxを利用できる環境になるのかもしれません。