função de retorno de chamada FN_VMB_CHANNEL_MAP_GPADL (vmbuskernelmodeclientlibapi.h)
[Algumas informações relacionam-se ao produto de pré-lançamento, o qual poderá ser substancialmente modificado antes do lançamento comercial. A Microsoft não fornece nenhuma garantia, expressa ou implícita, com relação às informações fornecidas aqui.]
A função VmbChannelMapGpadl mapeia um buffer do lado do cliente para o espaço de endereço físico do lado do servidor usando um número GPADL (Lista de Descritores de Endereço Físico Convidado).
Sintaxe
FN_VMB_CHANNEL_MAP_GPADL FnVmbChannelMapGpadl;
NTSTATUS FnVmbChannelMapGpadl(
VMBCHANNEL Channel,
UINT32 Flags,
UINT32 GpadlHandle,
PMDL *Mdl
)
{...}
Parâmetros
Channel
Um identificador para um canal.
Flags
Sinalizadores. Os valores de sinalizador possíveis são:
Valor | Significado |
---|---|
|
Mapear com acesso somente leitura. |
Se esse valor de sinalizador não estiver definido, a função tentará mapear o GPADL para acesso de gravação. Se o GPADL não tiver sido criado com acesso de gravação, essa tentativa de mapeamento falhará. O chamador não será impedido de gravar no buffer se esse sinalizador estiver definido. Esse esquema é usado para melhorar o desempenho da migração dinâmica e do instantâneo.
GpadlHandle
O identificador GPADL do GPADL a ser mapeado.
Mdl
Um ponteiro para um MDL que descreve o buffer do cliente. Esse buffer só é mapeado para o espaço de endereço físico. O chamador deve executar etapas adicionais para mapeá-lo para o espaço de endereço virtual.
Retornar valor
Retorna STATUS_SUCCESS se a operação for bem-sucedida ou um código de erro NTSTATUS apropriado, caso contrário.
Comentários
O GPADL deve ter sido previamente estabelecido pelo cliente, por exemplo, usando a função VmbChannelCreateGpadlFromBuffer .
Somente um único mapeamento pode existir para qualquer GPADL fornecido por vez.
Você deve emparelhar chamadas para essa função com chamadas para a função VmbChannelUnmapGpadl .
Importante
Essa função é chamada por meio da interface KMCL (Biblioteca de Clientes do Modo Kernel do VMBus), fornecida pelo driver de barramento Vmbkmcl.sys. Essa é uma função somente de servidor acessada da estrutura KMCL_SERVER_ONLY_METHODS .
Para obter mais informações, consulte a seção Comentários do KMCL_SERVER_ONLY_METHODS.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 1803 |
Cabeçalho | vmbuskernelmodeclientlibapi.h |