次の方法で共有


プール タグによる特別なプールの要求

指定したプール タグを使用するすべての割り当てに対して特別なプールを要求できます。 一度にカーネル特殊プール要求に関連付けることができるのは、システム上の 1 つのプール タグだけです。

Windows Vista 以降のバージョンの Windows では、コマンド ラインを使用して、プール タグによって特別なプールを要求することもできます。 詳細については、「GFlags コマンド」を参照してください。

プールタグで特別なプールをリクエストするには

  1. [システム レジストリ] タブまたは [カーネル フラグ] タブを選択します。

    Windows Vista 以降のバージョンの Windows では、このオプションは両方のタブで使用できます。 以前のバージョンの Windows では、[システム レジストリ] タブでのみ使用できます。

  2. [カーネル特殊プール タグ] セクションで、[テキスト] をクリックし、タグの 4 文字のパターンを入力します。

    タグには ? を含めることができます。(単一文字) および* (複数文字) のワイルドカード文字。 たとえば、Fat* や Av?4 などです。

  3. 次のスクリーン ショットは、[システム レジストリ] タブにテキストとして入力されたタグを示しています。

    Screenshot of a tag entered as text on the System Registry tab in GFlags.

  4. [Apply] をクリックします。

    「適用」をクリックすると、GFlags は選択を「テキスト」から「16 進数」に変更し、ASCII 文字を逆順 (下位エンディアン) の 16 進値として表示します。 たとえば、「Tag1」と入力すると、GFlags はタグを 0x31676154 (1gaT) として表示します。 これは、レジストリに保存され、デバッガーやその他のツールによって表示される方法です。

    次の図は、「適用」をクリックした場合の効果を示しています。

    Screenshot showing the effect of clicking Apply in GFlags, displaying the tag as hexadecimal values.

解説

この機能を効果的に使用するには、ドライバーまたは他のカーネル モード プログラムが固有のプール タグを使用していることを確認してください。 ドライバーが特別なプールをすべて消費していると思われる場合は、コード内で複数のプール タグを使用することを検討してください。 その後、ドライバーを複数回テストし、各テストで 1 つのプール タグに特別なプールを割り当てることができます。

また、システムのページ サイズより大きい 16 進値のプール タグを選択します。 カーネル モード コードの場合、PAGE_SIZE より小さい値を持つプール タグを入力すると、Gflags は、サイズが対応する範囲内のすべての割り当てに対して特別なプールを要求し、同等のプール タグを持つ割り当てに対して特別なプールを要求します。 たとえば、サイズ 30 を選択すると、サイズが 17 ~ 32 バイトのすべての割り当てと、プール タグ 0x0030 の割り当てに特別なプールが使用されます。