Compartir a través de


Sugerencias y requisitos de implementación para WDM Lower Edge

En este tema se describen sugerencias y requisitos para implementar un controlador de miniporte NDIS-WDM. Un controlador de miniporte NDIS-WDM puede llamar a funciones NDIS y no NDIS. Estas funciones que no son NDIS incluyen, por ejemplo, el modo WDM-kernel-mode admite rutinas y funciones para una interfaz de controlador de bus determinada.

Al implementar un controlador de miniporte NDIS-WDM, tenga en cuenta lo siguiente:

  • La creación de un controlador de miniporte NDIS-WDM requiere que se defina la marca de NDIS_WDM antes de incluir el archivo de encabezado Ndis.h. Definir la marca NDIS_WDM garantiza que Ndis.h incluya automáticamente el archivo de encabezado WDM adecuado. La marca NDIS_WDM debe incrustarse al principio del código fuente del controlador de miniporte o establecerse en el archivo Sources del controlador de miniport. Un controlador de miniporte NDIS-WDM requiere un archivo de encabezado WDM para llamar a rutinas en modo kernel, como IoCallDriver e IoAllocateIrp.

  • Las llamadas de función para una interfaz de controlador de bus determinada requieren los archivos de encabezado para ese controlador de bus.

  • No se recomienda incluir encabezados NDIS y no NDIS en el mismo archivo de origen porque es posible que no sean compatibles. Es decir, se deben crear archivos de código fuente independientes para el código que llama a funciones NDIS y para el código que llama a funciones que no son NDIS.

  • Un controlador de miniporte NDIS-WDM debe llamar a las funciones NDIS adecuadas para asignar y liberar recursos a menos que el controlador de miniporte NDIS-WDM asigne y libere recursos en uno de los escenarios siguientes:

    • Un recurso, normalmente un recurso de memoria, lo asigna el controlador de miniporte NDIS-WDM y, posteriormente, se libera mediante una entidad que no es NDIS, como una interfaz de controlador de bus,
    • Un recurso, normalmente un recurso de memoria, se asigna mediante una entidad que no es NDIS y el controlador de miniporte NDIS-WDM lo libera más adelante.

    En los escenarios anteriores, el controlador de miniporte NDIS-WDM debe llamar a las rutinas de WDM adecuadas para asignar o liberar recursos para la entidad que no es NDIS.