FN_VMB_CHANNEL_MAP_GPADL回调函数 (vmbuskernelmodeclientlibapi.h)
[某些信息与预发行的产品有关,该产品在商业发布之前可能会进行大幅修改。 Microsoft对此处提供的信息不作任何明示或暗示的保证。
VmbChannelMapGpadl 函数使用来宾物理地址描述符列表(GPADL)编号将客户端缓冲区映射到服务器端物理地址空间。
语法
FN_VMB_CHANNEL_MAP_GPADL FnVmbChannelMapGpadl;
NTSTATUS FnVmbChannelMapGpadl(
VMBCHANNEL Channel,
UINT32 Flags,
UINT32 GpadlHandle,
PMDL *Mdl
)
{...}
参数
Channel
通道的句柄。
Flags
标志。 可能的标志值为:
价值 | 意义 |
---|---|
|
具有只读访问权限的映射。 |
如果未设置此标志值,该函数将尝试映射 GPADL 进行写入访问。 如果未使用写入访问权限创建 GPADL,则此映射尝试将失败。 如果设置了此标志,则不会阻止调用方写入缓冲区。 此方案用于提高实时迁移和快照的性能。
GpadlHandle
要映射的 GPADL 的 GPADL 句柄。
Mdl
指向描述客户端缓冲区的 MDL 的指针。 此缓冲区仅映射到物理地址空间。 调用方必须采取其他步骤将其映射到虚拟地址空间。
返回值
如果作成功,则返回STATUS_SUCCESS;否则返回相应的 NTSTATUS 错误代码。
言论
例如,客户端必须使用 VmbChannelCreateGpadlFromBuffer 函数预先建立 GPADL。
对于任何给定的 GPADL,一次只能存在一个映射。
必须将对此函数的调用与对 VmbChannelUnmapGpadl 函数的调用配对。
重要
此函数通过 Vmbkmcl.sys 总线驱动程序提供的 VMBus 内核模式客户端库(KMCL)接口调用。 这是从 KMCL_SERVER_ONLY_METHODS 结构访问的仅限服务器的函数。
有关详细信息,请参阅 KMCL_SERVER_ONLY_METHODS的“备注”部分。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 版本 1803 |
标头 | vmbuskernelmodeclientlibapi.h |