Windows システム リソース マネージャーでリソース割り当てを作成することにより、プロセスで消費されるワーキング セット メモリやコミット メモリの量を制限できます。

メモリ制限はプロセスごとに適用されます。たとえば、ワーキング セット制限を 10 MB に指定するリソース割り当てを作成してプロセス一致条件に適用した場合、条件に一致する実行プロセスが 6 つあったとすると、10 MB の制限は 6 つのプロセスのそれぞれに適用されます。

ワーキング セット メモリの制限

一致するプロセスのワーキング セット メモリに上限を設定できます。Windows システム リソース マネージャーでは、一致するプロセスのワーキング セットが、リソース割り当てで定義した制限を越えないようにすることができます。制限に達した場合、それ以降のメモリ割り当てが失敗するのではなく、ワーキング セット メモリ内の既存のページが置き換わります。こうすることで、後続のアプリケーションのエラーが回避されます。

コミット メモリの制限

プロセスで消費されるコミット メモリに上限を設定できます。通常、プロセスで消費されるコミット メモリが増加し続ける場合の原因は、プロセスでのメモリ リークです。プロセスで消費されるコミット メモリの量に制限を設定しておくと、メモリ リークが発生した場合に対処できます。Windows システム リソース マネージャーでは、制限に達した場合、イベント ログにイベントを記録するか、またはプロセスを中断してイベント ログにイベントを記録することができます。

Windows システム リソース マネージャー サービスでは、コミット メモリの制限が守られます。一致するプロセスのコミット メモリ使用状況が監視され、プロセスによるコミット メモリの使用量が制限を超えた場合、ユーザー定義の操作が強制実行されます。実行できるユーザー定義の操作は次の 2 つです。

  • イベントを記録

  • プロセスを中断してイベントを記録

その他の考慮事項

  • メモリ制限を自身で動的に変更するアプリケーションやプロセスの管理には、Windows システム リソース マネージャーのメモリ制限を使用しないでください。Windows システム リソース マネージャーおよび管理対象アプリケーションが正常に動作しなくなる可能性があります。

  • 最も良い方法は、リソースの管理に CPU ターゲットを使用し、メモリ消費の問題が明らかなアプリケーションにのみメモリ制限を適用する方法です。アプリケーションの使用できるメモリを過剰に制限すると、アプリケーションによるタスク完了までの時間が長くなったり、ディスク使用量が増加する可能性があります。

その他の参照情報


目次