WSL2新バージョンで6系Linuxカーネルバイナリがリリース(9か月ぶり2回目)
カーネル6が復帰
以前、WSL ver2.3.11でLinuxカーネルがバージョン6になった時期がある
だが、その後リバートされてstable版には載らなかった。
ver 2.3.11
Update Kernel to 6.6.36.3
Hundreds of new kernel modules added.
https://github.com/microsoft/WSL/releases/tag/2.3.11
ver 2.3.17
Revert Linux kernel to 5.15.153.1-2 while issues are being debugged
https://github.com/microsoft/WSL/releases/tag/2.3.17
さて、それから半年ほど経ち、
またカーネル6が載ったバージョン2.5.6がリリースされた
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 本題はここから ↓-------------------
バージョンアップ情報
Fix docker by adding back modules loaded at boot (solves #12748) Dockerを修正し、起動時に読み込まれるモジュールを復活(#12748を解決)
Fix command line parsing preventing importing or exporting from stdout / stdin 標準入力/標準出力からのインポートやエクスポートを妨げるコマンドライン解析を修正
Bring back bridged networking mode WSL Kernel ブリッジドネットワーキングモードを復活
Update to 6.6.84.1 WSLカーネル(6.6.84.1)にアップデート
wslinfo: print newline after usage wslinfo:使用法の後に改行を追加
Add initgroups helper to work around musl limitation (solves #12755) Muslの制限を回避するためのinitgroupsヘルパーを追加(#12755を解決)
Remove invalid kmesg error when gui apps are disabled GUIアプリが無効になっている場合に表示される無効なkmesgエラーを削除
Fallback to GrantVmAccess when attaching a VHD fails with ERROR_ACCESS_DENIED ERROR_ACCESS_DENIEDでVHDのアタッチに失敗した場合、GrantVmAccessにフォールバック
Update UtilConnectToInteropServer to respect g_InitPid and minor wslinfo updates (solves #12714) UtilConnectToInteropServerを更新し、g_InitPidを尊重し、wslinfoの小規模な更新を(#12714を解決)
Put sparse vhd support behind an --allow-unsafe flag. スパースVHDのサポートを--allow-unsafeフラグの裏に配置
wslsettings: fix networking mode selection logic (solves #12745)wslsettings:ネットワーキングモード選択ロジックを修正(#12745を解決)
気になるのはこの二つかな
- ブリッジドネットワーキングモードを復活
- WSLカーネル(6.6.84.1)にアップデート
いずれも過去の経緯で公開されてからリバートされたものだ、
まだstable版ではないのでまたリバートされる可能性はあるが
そこは様子見するしかない。
カーネル差分
kernel 5から6になって何が変わったのかAIに聞いてみると
- 新しいドライバとハードウェアサポート: AMD GPUやRISC-Vアーキテクチャの改善、さらに新しいドライバが追加され、ハードウェアサポートが向上しました。
- セキュリティとパフォーマンスの向上: SELinuxの拡張権限サポートや、エネルギーカウンターのサポートなど、セキュリティと効率性が強化されています。
- ファイルシステムの改善: Btrfs RAID1の読み取りバランスサポートや、XFSのリアルタイムデバイスに対するリフリンクと逆マッピングサポートが追加されました。
- 新しい機能: Wineでのゲームエミュレーションを向上させる新しい同期サブシステムや、io_uringのFUSEサポートなどが導入されています。
- 電力管理の改善: Raspberry Piデバイスのサスペンド/レジュームサポートが追加され、電力管理が向上しました。
io_uring, cgroup v2, FUSEサポートは地味に嬉しいかも
io_uring
- 高速なI/O操作: io_uringは非同期I/O操作を効率化するための仕組みで、従来の方法よりも低いレイテンシーでデータの読み書きが可能です。これにより、Dockerコンテナ内でのファイル操作やデータベースアクセスが高速化されます。
- 柔軟性の向上: io_uringは複数のI/O要求を一度に処理できるため、Webアプリケーションのスケーラビリティが向上します。
cgroup v2
- リソース管理の改善: cgroup v2では、CPUやメモリの使用量をより細かく制御できるようになり、コンテナ間でのリソース競合を防ぎます。
- 効率的なプロセス管理: プロセスの階層的な管理が可能で、Dockerコンテナの動作をより効率的に制御できます。
Discussion