XMemMapPhysicalPagesScatter
将物理页映射到虚拟内存中。语法
参数
*VirtualAddressArray _In_类型:PVOID 页应被映射到的虚拟地址的数组。此参数不能设置为
NULL。使用带有 MEM_RESERVE 和 XMEM_MAPPABLE 的 XMemVirtualAlloc 来预留供 XMemMapPhysicalPagesScatter 使用的内存地址范围。预留的虚拟地址还必须通过 XMemVirtualAlloc 的 MEM_64K_PAGES 选项以 64k 页创建。
NumberOfPages _In_类型:ULONG_PTR PageArray 和 VirtualAddressArray 中的条目数。仅支持通过使用 MEM_64K_PAGES 选项的 XMemVirtualAlloc 预留的 64k 页。 PageArray _In_reads_opt_(NumberOfPages)
类型:PULONG_PTR 表示要映射的物理页的页帧编号 (PFN) 数组。此参数可以设置为
NULL。如果 PageArray 设置为 NULL,则此函数将执行取消映射操作。如果数组中的单个条目设置为 NULL,则相应的虚拟地址将被取消映射。
返回值
类型:BOOL 如果映射成功,则返回TRUE;否则,如果发生映射失败,则返回 FALSE。
备注
此函数将VirtualAddressArray 和 PageArray 视为具有相同长度的并行数组,长度由 NumberOfPages 指定。VirtualAddressArray 每个数组元素中的每个虚拟地址将根据 PageArray 被映射或取消映射:
- 如果
PageArray中的数组元素设置为一个 PFN,则VirtualAddressArray中相应数组元素的虚拟地址将映射到该 PFN。 - 如果
PageArray中的数组元素设置为NULL,则VirtualAddressArray中相应数组元素的虚拟地址将被取消映射。 - 如果
PageArray设置为NULL,则VirtualAddressArray中的每个虚拟地址都将被取消映射。
要求
头文件: xmem.h 库: xmem.lib 支持的平台: XBOX One 系列主机和 XBOX Series 主机另请参阅
XMemVirtualAllocXMem
