WSL 2とLinux kernel
「WSL 2」と「Linux kernel」に関する紹介です。今夏の「Windows Insiders build」から「Microsoft」内製の「Linux kernel」の提供が行われます。
この「Linux kernel」は、新アーキテクチャーの「WSL 2」を支える「Linux kernel」です。
「Windows」の1コンポーネントとして「Linux kernel」を提供することは、「Microsoft」にとって初めてのことです。
ユーザースペースのバイナリーは提供しない
「WSL 1」と同様に「WSL 2」は、ユーザースペースのLinuxバイナリーを提供しません。Linuxディストリビューションをインストールするなど、ユーザーが別途利用したいLinuxバイナリーを用意する必要があります。
Linux kernelの入手方法
「Microsoft」内製の「Linux kernel」は、Linuxバイナリーとの接点になります。一般的にユーザーは、「Windows Store」を通じて「Microsoft」内製の「Linux kernel」を入手(インストール)します。
しかしカスタムディストリビューションパッケージの作成を通じて「Linux kernel」をサイドロードすることも可能です。
ただしこのルールの唯一の例外は、起動プロセスをブートストラップするために小型のinitスクリプトを注入することです。
これにより「Windows」と「Linux」間の接続が形成されます。
Linux kernel 4.19
最初の「Microsoft」内製「Linux kernel」は、「Linux kernel 4.19」をベースとしています。これは現在最新のLTSリリース版「Linux kernel」です。
これに多くのローカルパッチをあてています。
このパッチは「WSL 2」向けに「Linux kernel」を最適化するためのパッチであり、起動時間の改善やメモリー使用量の削減、サポートするデバイスの選別及び最小化を行います。
この結果「WSL 1」で実装されたエミュレーションアーキテクチャーの代替となる小型かつ軽量な「Linux kernel」になりました。
アップストリームへの還元
アップストリームへの還元も取り組み姿勢に含まれています。コミュニティーと協力し可能な限り迅速にローカルパッチをアップストリームへ還元していきます。
セキュリティー
「Linux kernel」のアップデートは「Windows Update」を通じて提供され、アップデートはユーザーに対し透過的に行われます。「Linux kernel」は新機能と不具合の修正と共に最新に保たれます。
CVEなど脆弱性についても継続的に状況を把握し、セキュリティーに配慮した取り組みが行われます。
また新しいLTSリリースの「Linux kernel」がリリースされた暁には、十分な検証を行い、その「Linux kernel」をベースとした新しい「Linux kernel」が提供されます。
オープンソース
「Microsoft」内製「Linux kernel」は、完全にオープンソースです。「WSL 2」リリース時にソースコードが「Github」で公開され、ユーザーはソースコードの入手やビルドが可能になります。