POOL_TYPE列挙 (wdm.h)
POOL_TYPE列挙型は、割り当てるシステム メモリの種類を指定します。
構文
typedef enum _POOL_TYPE {
NonPagedPool,
NonPagedPoolExecute = NonPagedPool,
PagedPool,
NonPagedPoolMustSucceed = NonPagedPool + 2,
DontUseThisType,
NonPagedPoolCacheAligned = NonPagedPool + 4,
PagedPoolCacheAligned,
NonPagedPoolCacheAlignedMustS = NonPagedPool + 6,
MaxPoolType,
NonPagedPoolBase = 0,
NonPagedPoolBaseMustSucceed = NonPagedPoolBase + 2,
NonPagedPoolBaseCacheAligned = NonPagedPoolBase + 4,
NonPagedPoolBaseCacheAlignedMustS = NonPagedPoolBase + 6,
NonPagedPoolSession = 32,
PagedPoolSession = NonPagedPoolSession + 1,
NonPagedPoolMustSucceedSession = PagedPoolSession + 1,
DontUseThisTypeSession = NonPagedPoolMustSucceedSession + 1,
NonPagedPoolCacheAlignedSession = DontUseThisTypeSession + 1,
PagedPoolCacheAlignedSession = NonPagedPoolCacheAlignedSession + 1,
NonPagedPoolCacheAlignedMustSSession = PagedPoolCacheAlignedSession + 1,
NonPagedPoolNx = 512,
NonPagedPoolNxCacheAligned = NonPagedPoolNx + 4,
NonPagedPoolSessionNx = NonPagedPoolNx + 32,
} POOL_TYPE;
定数
NonPagedPool 非ページ プール。これは、非ページ システム メモリです。 非ページ プールには任意の IRQL からアクセスできますが、これは不足しているリソースであり、ドライバーは必要な場合にのみ割り当てる必要があります。 NonPagedPool プールの種類で割り当てられたシステム メモリは実行可能です。 詳細については、 NonPagedPoolExecute プールの種類の説明を参照してください。 Windows 8以降、ドライバーは、実行可能な非ページ プールではなく、非実行 (NX) 非ページ プールから非ページ メモリの大部分またはすべてを割り当てる必要があります。 詳細については、 NonPagedPoolNx プールの種類の説明を参照してください。 |
NonPagedPoolExecute Windows 8以降、NonPagedPoolExecute は NonPagedPool 値の代替名です。 この値は、割り当てられたメモリが非ページおよび実行可能であることを示します。つまり、このメモリで命令の実行が有効になります。 以前のバージョンの Windows からドライバーを移植するには、通常、ドライバーソース コード内の NonPagedPool 名のすべてのインスタンスまたはほとんどのインスタンスを NonPagedPoolNx に置き換える必要があります。 実行可能メモリが明示的に必要な場合を除き、 NonPagedPool 名のインスタンスを NonPagedPoolExecute に置き換えないようにしてください。 詳細については、「 No-Execute (NX) Nonpaged Pool」を参照してください。 |
PagedPool ページング可能なシステム メモリであるページ プール。 ページ プールは、IRQL < DISPATCH_LEVELでのみ割り当ておよびアクセスできます。 |
NonPagedPoolMustSucceed この値は 内部使用専用であり、システムの起動時にのみ使用できます。 要求されたメモリ サイズが使用できない場合、"成功する必要があります" 要求によってシステムがクラッシュするため、ドライバーはシステムの起動時以外にこの値を指定しないでください。 |
DontUseThisType システムで使用するために予約されています。 |
NonPagedPoolCacheAligned 非ページ プール。プロセッサ キャッシュの境界に合わせて配置されます。 この値は 内部使用専用です。 |
PagedPoolCacheAligned プロセッサ キャッシュの境界に合わせて配置されたページ プール。 この値は 内部使用専用です。 |
NonPagedPoolCacheAlignedMustS この値は 内部使用専用であり、システムの起動時にのみ使用できます。 これは、 NonPagedPoolMustSucceed に相当するキャッシュアラインメントです。 |
MaxPoolType システムで使用するために予約されています。 |
NonPagedPoolBase システムで使用するために予約されています。 |
NonPagedPoolBaseMustSucceed システムで使用するために予約されています。 |
NonPagedPoolBaseCacheAligned システムで使用するために予約されています。 |
NonPagedPoolBaseCacheAlignedMustS システムで使用するために予約されています。 |
NonPagedPoolSession 非推奨。 使用しないでください。 |
PagedPoolSession 使用は推奨されていません。 使用しないでください。 |
NonPagedPoolMustSucceedSession 使用は推奨されていません。 使用しないでください。 |
DontUseThisTypeSession 使用は推奨されていません。 使用しないでください。 |
NonPagedPoolCacheAlignedSession 使用は推奨されていません。 使用しないでください。 |
PagedPoolCacheAlignedSession 使用は推奨されていません。 使用しないでください。 |
NonPagedPoolCacheAlignedMustSSession 使用は推奨されていません。 使用しないでください。 |
NonPagedPoolNx 非実行 (NX) 非ページ プール。 このプールの種類は、Windows 8以降で使用できます。 実行可能メモリを割り当てる NonPagedPool によって指定された非ページ プールとは対照的に、NX 非ページ プールは命令実行が無効になっているメモリを割り当てます。 詳細については、「 No-Execute (NX) Nonpaged Pool」を参照してください。 非ページ プールには任意の IRQL からアクセスできますが、これは不足しているリソースであり、ドライバーは必要な場合にのみ割り当てる必要があります。 |
NonPagedPoolNxCacheAligned NX 非ページ プール。プロセッサ キャッシュの境界に合わせて配置されます。 この値は、オペレーティング システムで排他的に使用するために予約されています。 |
NonPagedPoolSessionNx オペレーティング システムによって排他的に使用するために予約されています。 |
要件
要件 | 値 |
---|---|
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h、Wudfwdm.h を含む) |
こちらもご覧ください
ExInitializeNPagedLookasideList