XMemMapPhysicalPages
XMemAllocatePhysicalPages によって割り当てられたページを仮想アドレス空間にマップします。Syntax
Parameters
VirtualAddress _In_型: PVOID ページをマップするアドレス。 NumberOfPages _In_
型: ULONG_PTR PageArray 内のエントリ数。 PageArray _In_reads_opt_(NumberOfPages)
型: PULONG_PTR マップするページを表すページ フレーム番号の配列。
Return value
型: PVOID 物理ページがマップされた仮想アドレス。マッピングに失敗した場合は NULL。 マッピング失敗の場合、拡張エラー情報を取得するには GetLastError を呼び出します。Remarks
仮想アドレス範囲は、XMemVirtualAlloc を MEM_RESERVE、ページ サイズ MEM_64K_PAGES または MEM_2MB_PAGES、および XMEM_MAPPABLE フラグとともに呼び出して、あらかじめ予約しておく必要があります。VirtualAlloc によって行われた MEM_PHYSICAL アドレス予約は、このメモリのマッピングには使用できません。 仮想アドレス範囲にすでにマップされたページがある場合、それらはアンマップされます。さらに、メモリ領域をデコミットするために PageArray に NULL を指定することもできます。 XMemMapPhysicalPages を使用して、同じ物理ページを仮想アドレス空間で複数回マップできます。ページが複数回マップされる場合、複数のマッピングは同一のキャッシュ属性を指定する必要があります (キャッシュ属性が指定されない場合は CPU コヒーレントが暗黙的で、それ以外の場合は PAGE_NOCACHE または PAGE_WRITECOMBINE のいずれかです)。MEM_2MB_PAGES で予約されたメモリに物理ページをマップする場合、物理ページは XMEM_2MB_CLUSTERS で割り当てられている必要があります。PageArray パラメーターには、各 2MB クラスターの最初の物理ページのみを含める必要があります。
Requirements
ヘッダー: xmem.h ライブラリ: xmem.lib サポートされているプラットフォーム: XBOX One ファミリー本体および XBOX Series 本体See also
XMem リファレンスXMemVirtualAlloc
VirtualFree
XMemFreePhysicalPages
