Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um driver de protocolo deve gerenciar estruturas de pools NET_BUFFER_LIST e estruturas de pools NET_BUFFER para operações de envio. Para criar esses pools, os drivers chamam as seguintes funções:
Os drivers de protocolo podem usar as seguintes funções para alocar estruturas dos pools:
NdisAllocateNetBufferAndNetBufferList
Chamar NdisAllocateNetBufferAndNetBufferList é mais eficiente do que chamar NdisAllocateNetBufferList seguido por NdisAllocateNetBuffer. No entanto, NdisAllocateNetBufferAndNetBufferList cria apenas uma estrutura NET_BUFFER na estrutura NET_BUFFER_LIST. Para usar NdisAllocateNetBufferAndNetBufferList, o driver deve definir o parâmetro AllocateNetBuffer como TRUE quando chamar NdisAllocateNetBufferListPool.
Os drivers de protocolo podem usar solicitações de OID para consultar os requisitos de preenchimento e espaço de contexto dos drivers subjacentes. Um driver de protocolo deve determinar os requisitos de preenchimento e contexto para uma associação nos estados de Abertura ou Reinicialização . O driver deve alocar espaço de preenchimento de fundo e contexto suficiente para toda a pilha. Se necessário, um driver de protocolo pode liberar os pools e realocá-los no estado de reinicialização .
Os drivers de protocolo usam as seguintes funções para liberar os pools:
Os drivers de protocolo usam as seguintes funções para liberar as estruturas de dados alocadas dos pools:
Os drivers devem liberar as estruturas NET_BUFFER alocadas com NdisAllocateNetBuffer antes de liberar a estrutura NET_BUFFER_LIST associada. Estruturas NET_BUFFER alocadas com NdisAllocateNetBufferAndNetBufferList são liberadas quando o driver chama NdisFreeNetBufferList para a NET_BUFFER_LIST associada.