知識マップ: Windows仮想化の深層(第3回) ── 数秒で起動する仮想マシン:WSL2・Windows Sandbox・コンテナーの軽さの正体
記事「Windows仮想化の深層(第3回) ── 数秒で起動する仮想マシン:WSL2・Windows Sandbox・コンテナーの軽さの正体」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。
WSL2は軽量ユーティリティVMの中で本物のLinuxカーネルを動かし、VM全体は.wslconfigで構成できる。キャッシュメモリの回収は実験的設定autoMemoryReclaimが制御し、OS境界を越えるファイルI/Oを避けるため、ファイルは操作するツールと同じOS側に置く。Windows Sandboxは動的ベースイメージでディスクの複製を避け、それを前提とするダイレクトマップでメモリフットプリントも抑え、既定で有効なネットワークなどは.wsb構成ファイルで制御する。Windowsコンテナーの分離モードのうちセキュリティ境界とされるのはHyper-V分離のみで、信頼できないコードの実行にはプロセス分離ではなくHyper-V分離を選ぶ。Hyper-V VMの中でWSL2を動かす場合は、1段の入れ子の仮想化がサポートされる。
flowchart LR
accTitle: WSL2・Windows Sandbox・コンテナーの知識マップ
accDescr: WSL2が軽量ユーティリティVMとLinuxカーネルを使い.wslconfigで構成され、Windows Sandboxが動的ベースイメージとダイレクトマップでホストと共有し、コンテナーはHyper-V分離だけがセキュリティ境界となる関係図
wsl2["WSL 2"]
windows_sandbox["Windows サンドボックス"]
container_process_isolation["プロセス分離"]
container_hyperv_isolation["Hyper-V分離"]
lightweight_utility_vm["軽量ユーティリティVM"]
linux_kernel["Linuxカーネル"]
wslconfig[".wslconfig"]
wsl2_cached_memory["WSL2のキャッシュメモリ"]
automemoryreclaim["autoMemoryReclaim設定"]
dynamic_base_image["動的ベースイメージ"]
direct_map["ダイレクトマップ"]
memory_footprint["メモリフットプリント"]
wsb_configuration_file[".wsb構成ファイル"]
security_boundary["セキュリティ境界"]
untrusted_code_execution["信頼できないコードの実行"]
nested_virtualization["入れ子の仮想化"]
disk_footprint["ディスクフットプリント"]
namespace_isolation["名前空間の分離"]
same_os_file_placement["同一OS側へのファイル配置"]
cross_os_file_access["OS間ファイルアクセス"]
wsl2 -->|"利用する"| lightweight_utility_vm
wsl2 -->|"利用する"| linux_kernel
wsl2 -->|"で構成できる"| wslconfig
wsl2_cached_memory -->|"で構成できる"| automemoryreclaim
windows_sandbox -->|"利用する"| dynamic_base_image
windows_sandbox -->|"利用する"| direct_map
direct_map -->|"軽減する"| memory_footprint
windows_sandbox -->|"で構成できる"| wsb_configuration_file
container_hyperv_isolation -->|"実装を担う"| security_boundary
container_process_isolation -->|"用いるのは非推奨"| untrusted_code_execution
container_hyperv_isolation -->|"推奨される対応"| untrusted_code_execution
wsl2 -.->|"前提とする"| nested_virtualization
container_hyperv_isolation -->|"利用する"| lightweight_utility_vm
direct_map -->|"前提とする"| dynamic_base_image
dynamic_base_image -->|"軽減する"| disk_footprint
container_hyperv_isolation -.->|"前提とする"| nested_virtualization
container_process_isolation -->|"利用する"| namespace_isolation
wsb_configuration_file -->|"推奨される対応"| untrusted_code_execution
same_os_file_placement -->|"推奨される対応"| cross_os_file_access
概念間の関係(全19件)
図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。
- WSL 2は軽量ユーティリティVMを利用します。
- WSL 2はLinuxカーネルを利用します。
- WSL 2は.wslconfigで構成できます。
- WSL2のキャッシュメモリはautoMemoryReclaim設定で構成できます。
- Windows サンドボックスは動的ベースイメージを利用します。
- Windows サンドボックスはダイレクトマップを利用します。
- ダイレクトマップはメモリフットプリントを軽減します。
- Windows サンドボックスは.wsb構成ファイルで構成できます。
- Hyper-V分離はセキュリティ境界の実装を担います。
- プロセス分離を信頼できないコードの実行に用いることは推奨されません。
- Hyper-V分離は信頼できないコードの実行に対する本記事の推奨です。
- WSL 2は入れ子の仮想化を前提とします。
- Hyper-V分離は軽量ユーティリティVMを利用します。
- ダイレクトマップは動的ベースイメージを前提とします。
- 動的ベースイメージはディスクフットプリントを軽減します。
- Hyper-V分離は入れ子の仮想化を前提とします。
- プロセス分離は名前空間の分離を利用します。
- .wsb構成ファイルは信頼できないコードの実行に対する本記事の推奨です。
- 同一OS側へのファイル配置はOS間ファイルアクセスに対する本記事の推奨です。
主要概念の定義
機械可読データ
このデータセットについて
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。