RPC 状態情報を有効にする

RPC ランタイム状態情報は、サーバー情報と完全な情報の 2 つの異なるレベルで収集できます。 デバッガーまたは DbgRpc を使用して状態情報を分析する前に、この情報収集を有効にする必要があります。

RPC 状態情報の収集をサポートするのは、Windows XP 以降のバージョンの Windows のみです。

サーバーの状態情報の収集は非常に軽量です。 RPC 呼び出しにつき約 100 の機械命令が消費されるため、パフォーマンス テスト中でも検出可能な負荷が発生しません。 ただし、この情報を収集すると、(RPC サーバーあたり約 4 KB) メモリが使用されるため、既にメモリ不足が発生しているコンピューターでは推奨されません。 サーバー 情報には、エンドポイント、スレッド、接続オブジェクト、およびサーバー呼び出し (SCALL) オブジェクトに関するデータが含まれます。 これは、ほとんどの RPC の問題をデバッグするのに十分です。

完全な状態情報の収集は、より負荷がかかります。 これには、サーバー レベルで収集されたすべての情報が含まれます。さらに、Client Call (CCALL) オブジェクトも含まれます。 通常、完全な状態情報は必要ありません。

個々のコンピューターで状態情報を収集できるようにするには、Group Policy Editor (Gpedit.msc) を実行します。 Local Computer Polic で、[コンピューターの構成] > [管理テンプレート] > [システム] > [リモート プロシージャ呼び出し] の順に選択します。 このノードで、[RPC トラブルシューティング状態情報の維持] アイテムが表示されます。 そのプロパティを編集すると、次の 5 つの状態が表示されます。

なし
状態情報は維持されません。 コンピューターでメモリが不足していない限り、これは推奨されません。

[サーバー]
サーバー の状態情報が収集されます。 これは、1 台のコンピューターで推奨される設定です。

完全
完全な状態情報が収集されます。

Auto1
RAM が 64 MB 未満のコンピューターでは、これは、None と同じです。 少なくとも 64 MB の RAM を搭載したコンピューターでは、これは Server と同じです。

Auto2
128 MB 未満の RAM を搭載した Windows Server 2003 を実行しているコンピューター、または任意の Windows XP コンピューターでは、これは None と同じです。 少なくとも 128 MB の RAM を搭載した Windows Server 2003 コンピューターでは、これは Server と同じです。

これが既定です。

ネットワーク接続された一連のコンピューターでこれらのレベルを同時に設定する場合は、Group Policy Editor を使用して、マシン ポリシーを優先するマシン一式にロールアウトします。 ポリシー エンジンは、必要な設定が優先されるマシン一式に反映されるように注意します。 Auto1Auto2 レベルは、オペレーティング システムと各コンピューター上の RAM の量が異なる可能性があるため、この場合に特に便利です。

Windows XP より前のバージョンの Windows を実行しているコンピューターがネットワークに含まれている場合、それらのコンピューターでは設定は無視されます。