私は、マイクロソフトが実施しているテクニカルカンファレンス「Ignite」に参加するためにフロリダのオーランドということろに来ております。Igniteが実施している期間中に、「ほぼ」リアルタイムレポートをお届けしたいと思います。2」について記載します。このセッションは以下のような方が対象になります。WSL2がどのような機能を持っているか知りたい!!本セッションでは、WSL2の機能を紹介した上で、WSL1と機能面で比較を行い、WSL2の優位点を説明していました。Linux(以降、WSL)は、平たく言うとWindows内でLinuxを実行できる仕組みです。これによりWindowsでの開発環境は劇的に改善します。開発環境としてのWindowsは、そのインターフェースの親しみやすさから、言わずもがな使いやすいです。Windowsは音楽や動画などのメディア系ファイルを扱うOSとしては、秀逸です。一方で、シェルの扱いやすさは、Linuxに軍配が上がります。ログをgrepしながらtailしたりなどの操作はWindowsでは中々にハードルが高いのが事実です(出来なくはないですが)。そんなLinuxとWindowsのいいとこ取りをしたいというエンジニアは数多いらっしゃると思います。WindowsよりLinuxが優れている例として、先程もご説明した「シェルの操作性」があります。以下のような、重複した行が散在するテキストファイルから、重複した行だけを取り出してソートするという例を考えてみます。bananaapplepeachapplebananabananatomatobananaWindows、Linuxそれぞれの場合で、上記の内容を実現するシェルは以下のとおりです。sortやはり、Linuxの方に軍配が上がりますね。Windowsの場合より、シンプルな方法で実現が可能です。いずれのコマンドも結果は同じで、以下のとおりとなります。Windowsの実現方式がありました。今回ご紹介するWSLとそれらの決定的な違いは、「導入の容易さ」「高速起動」「Windowsとの親和性」です。導入の容易さまず、導入の容易さについて、ご説明致します。Boxを始めとした仮想環境は、ネットワークやストレージ、メモリを始めとした各種リソースの設定、それからOSのインストールと、かなりの手間と時間を要します。それと比べて、WSLを導入するまでは数ステップ、時間にすれば10分程度で、OSインストール済みの環境が出来上がり、しかも全てGUIで完結します(後述するWSL2は一部CLIが必要)。本当に簡単で、あっという間です。高速起動WSLの起動は、ほぼ一瞬です。それは、Windowsのコマンドプロンプトを起動するのと同じような感覚といっても過言ではありません。Boxなどの仮想環境は、昨今のOSの起動が早くなったとはいえ、WSLには遠く及びません。bashなどのシェルが使いたい時に、たとえ5秒待たされるのさえストレスに感じます。使いたい時にさっと使えるのは、大きなアドバンテージになるのではないでしょうか?Windowsとの親和性WSLは非常にWindowsとの親和性が高いことが、大きなメリットです。その一例として、Windows⇔Linux間の相互ファイルアクセスです。Boxでも、SambaなどのCIFSプロトコルに対応したサーバーを立てれば、もちろん可能です。Sambaのインストールや設定といった煩雑な作業が待っていますし、アクセス権の設定やファイル名の文字コードなど、頭を悩ませることがありますよね。WSLであれば、とても簡単です。WindowsからLinux上にあるファイルにアクセスするには、「\\wsl$\[ディストリビューションの名前]」というパスにアクセスすればOKです。ディストリビューションがUbuntuの場合は「\\wsl$\Ubuntu」となります。LinuxからWindowsの場合は、「/mnt/[ドライブ名]」というパスにアクセスすると、Windowsの指定したドライブ直下にアクセスが出来ます。Cドライブにアクセスする場合は、「/mnt/c」となります。Windows上でLinuxを使う場合、WSLは従来の方法に比べて、たくさんのメリットがあることがご理解頂けたかと思います。WSL2とは?さて、ここからWSL2のご説明に入ります。ファイルシステムへのアクセス向上が挙げられていました。ケースにもよりますが、2〜4倍近い性能向上が見られるようです。一つの大きなメリットです。WSL2は、Hyper-Vベースの仮想マシンサービス上にLinuxカーネルを搭載したOSが動作することにより、Windows上でフル互換のLinuxが動作します。これによりWSL上でDockerが動作できるようになりました。WSL1とWSL2のコンソールを2つ並べて、pythonをインストールするというデモが行われました。WSL1では53.698秒、WSL2では11.457秒とその差は歴然でした(^o^)WSL2に採用されているLinuxカーネルは、マイクロソフト独自パッチを当てることで軽量化を実現しているので、約2秒程度の超高速起動を実現しています。bashが使いたいときに、Linux環境の起動がもったりするのは、かなりストレスになるのは想像に難くありません。WSL1同様、WSL2もストレスフリーのbash環境を実現できます。WSL2は、Hyper-Vベースの仮想マシンサービス上にLinuxカーネルを搭載したOSが動作しますが、こちらにも専用の改良がなされています。このHyper-Vは、WSL2専用にカスタマイズされた軽量なものであり、これにより高速起動が可能になっています。WSL2のアーキテクチャです。WSL1では、Linuxカーネルのファンクションコールが、LXCoreというシステムによって、Windowsへのファンクションコールに変換されていましたが、WSL2では下図からわかるように、Hypervisor上で動作します。ホンモノのLinuxです。Previewのみの提供となっております。GAは2020年前半くらいだそうです。待たされますね(><)まとめWSL2ではフル互換のLinuxが実現されていますので、Dockerが利用できます。これは大きなメリットです。WSL2はアプリケーションの開発環境に劇的な改善をもたらすことが期待できます。雑誌等の執筆依頼を受付しております。役に立たなかった0人がこの投稿は役に立ったと言っています。コメントをキャンセルメールアドレスは表示されません。Reserved.本サイトに掲載されている社名、製品名、サービス名等は各社の商標または登録商標です。プライバシーポリシーお問い合わせ。