最近、Windowsにいろいろインストールしすぎて、ぐちゃぐちゃになってきた。
何かをビルドしても、何が原因でうまくいったのか、いかなかったのかわからない。
そこで、Windows 10 の Pro 以上で使える、Windows Sandbox(サンドボックス) を試してみようと思います。
Micorosoftのサイトによると、Windows Sandbox は次のようなものらしいです。
Windows サンドボックスは、アプリケーションを単独で安全に実行するための軽量のデスクトップ環境を提供します。 Windows サンドボックス環境内にインストールされたソフトウェアは “サンドボックス化” されたままになり、ホスト コンピューターとは別に実行されます。
サンドボックスは一時的なものです。 サンドボックスを閉じると、すべてのソフトウェアとファイル、および状態が削除されます。 アプリケーションを開くごとに、サンドボックスの新しいインスタンスを取得します。 ただし、Windows 11 ビルド 22509 以降、データは仮想化環境内から開始された再起動を通じて保持されることに注意してください。これは、OS の再起動が必要なアプリケーションのインストールに役立ちます。
ホストにインストールされているソフトウェアとアプリケーションは、サンドボックスでは直接利用できません。 Windows サンドボックス環境内で特定のアプリケーションを使用する必要がある場合は、環境内に明示的にインストールする必要があります。
Windows サンドボックス
この機能は標準では有効になっていないので、次の手順で有効にします。
Windowsキー+R で、ファイル名を指定して実行ダイアログを開き、以下を入力します。
optionalfeatures.exe

OKを押すと、Windows の機能の有効化または無効化が開きます。
ここで「Windows サンドボックス」にチェックを入れて、OKボタンをクリック。

再起動を求められるので、素直に再起動します。
次に起動すると、スタートメニューに「Windows Snadbox」が出てきます。
(アルファベット表記かカタカナ表記か統一してほしい・・・)

これをクリックすると、まっさらな Windows 10 環境が立ち上がります。

2022/5/24時点でサンドボックスのOSバージョンは以下の通りでした。
1 2 3 4 |
エディション Windows 10 Enterprise バージョン 2004 インストール日 5/3/2022 OSビルド 19041.1706 |
CPUはホストのスペックを踏襲するようです。
また、メモリは標準で4GBとなっており、少ないと感じるかもしれませんが、起動直後でのメモリ使用量は1GB未満なので、3GB以上はフリーで使えます。
ネットワークアダプタはホスト側で vEthernet (Default Switch)という仮想アダプタが追加されて、ゲストとの通信はこの仮想アダプタを通して行われます。
メモリのサイズなどは構成ファイルで指定が可能です。詳細はMicrosoftのWindows サンドボックス構成 を参照。

システム環境変数のPathはこんな感じ。

1 2 3 4 5 |
%SystemRoot%\system32 %SystemRoot% %SystemRoot%\System32\Wbem %SYSTEMROOT%\System32\WindowsPowerShell\v1.0\ %SYSTEMROOT%\System32\OpenSSH\ |
知らなかったけど、最近の Windows は標準で OpennSSH とか入ってるの?
これでちょっとまっさらな状態から、Amazon Kinesis Video Stream(KVS) のC++用プロデューサーSDK のビルド環境でも作ってみようと思います。