Resumen de los cambios necesarios para migrar un controlador de miniporte a NDIS 6.20
En este tema se resumen los cambios necesarios para migrar un controlador de miniporte NDIS 6.x a NDIS 6.20.
NDIS 6.20 conserva la compatibilidad con versiones anteriores de NDIS. Para obtener más información sobre la compatibilidad con versiones anteriores, consulte Compatibilidad con versiones anteriores de NDIS 6.20.
Para actualizar un controlador de minipuerto para admitir el entorno NDIS 6.20, debe modificar el controlador de miniporte NDIS 6.x de la siguiente manera:
Entorno de compilación
Reemplace la definición del preprocesador NDIS60_MINIPORT_DRIVER o NDIS61_MINIPORT_DRIVER por NDIS620_MINIPORT_DRIVER.
Requisitos generales de portabilidad
Reemplace las interfaces obsoletas por versiones de NDIS 6.20. Para obtener más información sobre las interfaces obsoletas, vea Interfaces obsoletas en NDIS 6.20.
Actualice las siguientes interfaces para admitir más de 64 procesadores:
- Escalado lateral de recepción (RSS)
- Interfaces de controlador de dispositivo de información del procesador
- Asignación de recursos
- Bloqueos de lectura y escritura
Para obtener más información sobre cómo admitir más de 64 procesadores, consulte Compatibilidad con más de 64 procesadores en NDIS 6.20.
Inicialización del controlador
Establezca la versión NDIS en 6.20 en los miembros MajorNdisVersion y MinorNdisVersion de la estructura NDIS_MINIPORT_DRIVER_CHARACTERISTICS , que se pasa a la función NdisMRegisterMiniportDriver .
Establezca la versión del controlador de miniporte en los miembros MajorDriverVersion y MinorDriverVersion de la estructura de NDIS_MINIPORT_DRIVER_CHARACTERISTICS en un valor específico del controlador adecuado.
Defina los puntos de entrada de solicitud OID directos en la estructura NDIS_MINIPORT_DRIVER_CHARACTERISTICS. La compatibilidad con la interfaz de solicitud OID directa era opcional para los controladores NDIS 6.1, pero es obligatorio para los controladores NDIS 6.20. Para obtener más información sobre la interfaz de solicitud OID directa del controlador de minipuerto, consulte Solicitudes de OID del adaptador de miniporte.
Inicialización del adaptador de minipuerto
Use la versión más reciente de las interfaces de anuncios del adaptador de miniporte. Las siguientes interfaces tienen funcionalidades actualizadas:
- Administración de energía
- Escalado lateral de recepción (RSS)
- Asistencia de hardware (VMQ)
Use las versiones actualizadas de estas estructuras:
- NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES
- NDIS_RESTART_GENERAL_ATTRIBUTES
- NDIS_RECEIVE_SCALE_PARAMETERS
- NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES
Para obtener información sobre la información sobre la versión de la estructura NDIS, vea Especificación de la información de versión de NDIS.
Rutas de acceso de envío y recepción de código
Los controladores NDIS 6.20 deben admitir la limitación del lado de recepción (RST) en el procesamiento de interrupciones de recepción. Los parámetros ReceiveThrottleParameters de las funciones de controlador DPC MiniportInterruptDPC yMiniportMessageInterruptDPC apuntan a una estructura de NDIS_RECEIVE_THROTTLE_PARAMETERS . Al entrar en el controlador de llamada a procedimiento diferido (DPC), el miembro MaxNblsToIndicate de la estructura de NDIS_RECEIVE_THROTTLE_PARAMETERS especifica el número máximo de estructuras de NET_BUFFER_LIST que el controlador de miniporte debe indicar en el DPC. Para obtener más información sobre RST, vea Receive Side Throttle in NDIS 6.20.
Use la versión actualizada de la estructura NET_BUFFER .
Opcionalmente, admite la interfaz de cola de máquinas virtuales (VMQ). Para más información sobre VMQ, consulte Cola de máquinas virtuales (VMQ) en NDIS 6.20.