次の方法で共有


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) 非ページ プール」を参照してください。
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) 非ページ プール」を参照してください。

非ページ プールは任意の IRQL からアクセスできますが、リソースが不足しているため、ドライバーは必要な場合にのみ割り当てる必要があります。
NonPagedPoolNxCacheAligned
NX 非ページ プール。プロセッサ キャッシュ境界にアラインされています。 この値は、オペレーティング システムが排他的に使用するために予約されています。
NonPagedPoolSessionNx
オペレーティング システムが排他的に使用するために予約されています。

必要条件

要件 価値
ヘッダー wdm.h (Wdm.h、Ntddk.h、Ntifs.h、Wudfwdm.h を含む)

関連項目

ExAllocatePoolWithQuotaTag

ExAllocatePoolWithTag

ExAllocatePoolWithTagPriority

ExInitializeLookasideListEx

ExInitializeNPagedLookasideList

ExInitializePagedLookasideList

LookasideListAllocateEx

SeAssignSecurity

SeAssignSecurityEx