Performance Improvements for an NDIS Miniport Driver
9/8/2008
Para melhorar desempenho de seu driver de miniporta NDIS, foco no uso de rotinas dormir, interrupções e um driver desserializado. Para obter as práticas gerais para melhorar o desempenho do driver, consulte Considerations For Improving NDIS Driver Performance
- Suspensão rotinas
Se seu driver dorme para um intervalo que é maior que exigido, ele negativamente pode afetar desempenho, especialmente se o driver estiver em um crítico caminho. Para atrasos maior que 50 microssegundos, use NdisMSleep em vez de NdisStallExecution. - Interrupções
Interrupções ocorrer em qualquer apontar onde dados chegam a NIC. Quando ocorre a interrupção e você chamar a rotina serviço interrupção (ISR), o ISR, in TURN, sinais de segmento serviço interrupção (ist). Pelo tempo de ist executa, mais dados talvez disponível em de NIC que foi disponível quando ocorreu a interrupção. Essa pode causar mais de one byte de informações seja disponível para processamento. É importante para processo todos os dados que estão disponível no tempo é o ist executar. Caso contrário, você desperdiçar ciclos CPU. - Driver serializado
Desserializado drivers internamente fila de entrada todos enviar pacotes e serializar a operação de seus próprios MiniportaXXX funções instead of depender NDIS para executar essas operações. Isso resulta em desempenho significativamente melhor full-duplex, se você manter o crítico seções do driver pequeno.
A seguinte lista mostra miniporta adicional otimizações driver.
- Desabilitar firewall melhora o desempenho do driver como firewall consome ciclos CPU. Um firewall dispositivo não pode ser necessário se o dispositivo estiver protegido por um firewall existente/NAT. Para obter informações sobre suporte do firewall em Windows Embedded CE, consulte IP Firewall Application Development. Para obter informações adicionais sobre o firewall de segurança, consulte IP Firewall Security.
- Defina a variável de ambiente IMGNOSHAREETH. Isso melhora desempenho para as configurações não-depuração removendo o VMINI compartilhada biblioteca Ethernet da executar-imagem tempo. Para obter informações sobre variáveis img, consulte IMG Environment Variables.**
- Evitar interrupção serviço segmento (ist) sobrecarga quando múltiplo adaptadores rede são usados no sistema. Para obter mais informações, consulte Shared IST for NDIS.