Microsoft は、Windows のメモリ使用量やメモリの問題を分析するために、組み込みのタスクマネージャー、リソースモニター、パフォーマンスモニターや、RAMMap や PoolMon などの SysInternals ツールといった、さまざまなツールを提供しています。このトピックでは、前述のツールの使用方法について説明します。詳細については、対応する Microsoft のドキュメントをご参照ください。
このトピックでは Windows Server 2012 を例として使用します。ユーザーインターフェースはオペレーティングシステムのバージョンによって異なる場合があります。ご利用のオペレーティングシステムの実際のインターフェースが優先されます。
タスクマネージャー
タスクマネージャーを使用して、Windows システムのメモリ使用量を監視できます。メモリを消費するプロセスに関する詳細情報を提供します。[パフォーマンス] タブでは、仮想メモリの使用量を確認できます。コミット済みの仮想メモリ (コミット済みバイト数) の量がコミットの制限に近づくと、システムのパフォーマンスに問題が発生します。
Windows サーバーにリモート接続します。
Windows のデスクトップで、 を開きます。
[パフォーマンス] タブをクリックします。左側で、[メモリ] をクリックしてメモリ使用量を確認します。

リソースモニター
リソースモニターを使用して、各プロセスの詳細なメモリ使用量を確認できます。
Windows サーバーにリモート接続します。
タスクバーの検索ボックスに
Resource Monitorを入力し、アプリケーションを開きます。[メモリ] タブをクリックすると、各プロセスのメモリ使用量が表示されます。各プロセスについて、[コミット (KB)] 列の値に特に注意してください。大量のメモリを消費するプロセスを特定し、その消費量がお客様のビジネスニーズにとって正常であるかどうかを判断してください。

物理メモリの使用量は、次の部分で構成されます。
ハードウェア予約済み:ハードウェア用に予約されているメモリ。
使用中:プロセス、ドライバー、およびオペレーティングシステムによって使用されているメモリ。
変更済み:他の目的で使用される前に、その内容をディスクに書き込む必要があるメモリ。
スタンバイ:アクティブに使用されていないキャッシュデータとコードを含むメモリ。
空き:価値のあるデータを含まず、プロセス、ドライバー、またはオペレーティングシステムがより多くのメモリを必要とするときに最初に使用されるメモリ。
キャッシュ:ファイルが開かれると、システムは高速アクセスのためにそれをキャッシュに保存します。Windows Server 2008 R2 以降では、システムはファイルキャッシュに使用できるメモリの量を制限します。これにより、キャッシュが大きくても、アプリケーションで利用可能な十分な物理メモリが確保されます。
パフォーマンスモニター
パフォーマンスモニターは、Windows のシステムリソース消費データを監視および収集するための重要なツールです。
Windows サーバーにリモート接続します。
タスクバーの検索ボックスに
Performance Monitorと入力し、アプリケーションを開きます。左上隅で、 を選択します。
デフォルトでは、パフォーマンスモニターは 1 秒に 1 回、さまざまなシステムリソースをサンプリングします。

カウンターを追加し、そのパフォーマンスデータを確認します。
カウンターのクイック追加
システムリソースの消費をリアルタイムで確認するには、
アイコンをクリックし、プロンプトに従ってカウンターを追加します。
パフォーマンスモニターのページで、追加されたカウンターのパフォーマンスデータを確認します。
ユーザー定義カウンターの追加
左側のナビゲーションウィンドウで、 を選択します。
[ユーザー定義] にカーソルを合わせ、右クリックし、[新規] を選択し、画面の指示に従ってカウンターを追加します。
たとえば、Logical Disk、Memory、System、Processor、Process のカウンターを追加して、リアルタイムのリソース状況を確認します。サンプリング間隔を設定することで、収集頻度を定義することもできます。たとえば、サーバーに再現に時間がかかるメモリリークがある場合は、サンプリング間隔を 5 秒に設定します。サーバーで頻繁に高い CPU 使用率が発生する場合は、サンプリング間隔を 1 秒に設定します。

パフォーマンスモニターのページで、追加されたカウンターのパフォーマンスデータを確認します。
RAMMap、Process Explorer、および Poolmon
RAMMap
RAMMap は、マイクロソフト製のメモリ分析ツールです。物理メモリが完全に利用されているにもかかわらず、タスクマネージャーではメモリ使用量の多いプロセスが表示されないことがあります。これは多くの場合、基盤となるシステムによってメモリが使用されていることを示します。RAMMap を使用すると、タスクマネージャーに表示されないシステムのメモリ使用量を確認できます。
Process Explorer
Process Explorer は、Microsoft が提供するプロセス管理ユーティリティで、組み込みの Windows タスクマネージャーよりも詳細な情報を提供します。Process Explorer を使用すると、さまざまな種類のメモリリソースの消費など、各プロセスの詳細なリソース使用量を表示できます。

Poolmon
Poolmon は Microsoft の無料ツールです。Windows カーネルの 2 つのコアメモリリソースは、非ページプールとページプールです。オペレーティングシステムのパフォーマンスの問題は、これらのメモリリソースが枯渇することによって発生することがよくあります。他のツールでは全体的なリソース消費量を示すことができますが、リソースを消費している特定のプールタグを特定するには Poolmon が必要です。
perfmon ログをチェックして、どのプールタグがリソースの枯渇を引き起こしているかを見つけることができます。たとえば、IoDn タグがリソースを枯渇させていることがわかった場合、次のコマンドを使用して SafeDogFileGuard.sys が原因であることを特定できます。その後、対応するアプリケーションを修正することで問題を解決できます。
findstr /m /l IoDn *.sys次のような出力が表示されます。

> タスクマネージャー