Skip to content

VMWareUser.exe プロセスを終了して、Windows ゲストの高負荷状態を回避する

普段は Mac 上で VMware Fusion3 を使っているのですが、ゲスト OS が Windows の場合だけ、なぜか高負荷になる場合があります。VMware Fusion なのかは分かりませんが、他の方も同じような事象に遭遇しているようです。

VMware の Knowledge Base を検索しても、それらしい事象を見つけられないのですが、これはゲスト の Windows OS 上で "VMwareUser.exe" プロセスを終了することで回避出来るようです。ただし、VMwareUser.exe プロセスはホスト 〜 ゲスト間でのドラッグ&ドロップや、クリップボード共有の機能を提供しているので、このプロセスを終了することでこれらの機能は利用出来なくなります。

プロセスの一覧を表示する

もちろん、タスクマネージャからプロセスの一覧を確認することは出来ますが、コマンドプロンプトから "tasklist" コマンドを実行することでもプロセスの一覧を取得することが出来ます。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
> tasklist

イメージ名                     PID セッション名     セッション# メモリ使用量
========================= ======== ================ =========== ============
System Idle Process              0 Console                    0         28 K
System                           4 Console                    0        260 K
smss.exe                       304 Console                    0        440 K
        ・
        ・
        ・
VMwareTray.exe                1800 Console                    0      5,720 K
VMwareUser.exe                1836 Console                    0     11,392 K
VMUpgradeHelper.exe           1852 Console                    0      4,472 K
        ・
        ・
        ・

毎回、ゲストの Windows OS が起動する毎に VMwareUser.exe プロセスを終了するのは面倒です。そこで以下のようなバッチファイルを作成します。"taskkill" コマンドを使うと、コマンドプロンプトから指定したプロセスを終了することが出来ます。"/F" は強制終了、"/IM" はイメージ名の指定を示すオプションです。

1
taskkill /F /IM "VMwareUser.exe"

このバッチファイルをスタートアップに入れておけば、起動時に "VMwareUser.exe" プロセスを終了することが出来ると思います。私はクリップボード共有を使いたい場合があるので、スタートアップには入れず、必要な場合にバッチファイルを実行しています。