netdma.) h (NET_DMA_PROVIDER_CHARACTERISTICS结构

注意Windows 8及更高版本中不支持 NetDMA 接口。
 
NET_DMA_PROVIDER_CHARACTERISTICS结构指定 NetDMA 提供程序的特征,包括 ProviderXxx 函数的入口点。

语法

typedef struct _NET_DMA_PROVIDER_CHARACTERISTICS {
  UCHAR                             MajorVersion;
  UCHAR                             MinorVersion;
  USHORT                            Size;
  ULONG                             Flags;
  PDEVICE_OBJECT                    PhysicalDeviceObject;
  ULONG                             MaxDmaChannelCount;
  DMA_CHANNELS_CPU_AFFINITY_HANDLER SetDmaChannelCpuAffinity;
  DMA_CHANNEL_ALLOCATE_HANDLER      AllocateDmaChannel;
  DMA_CHANNEL_FREE_HANDLER          FreeDmaChannel;
  DMA_START_HANDLER                 StartDma;
  DMA_SUSPEND_HANDLER               SuspendDma;
  DMA_RESUME_HANDLER                ResumeDma;
  DMA_ABORT_HANDLER                 AbortDma;
  DMA_APPEND_HANDLER                AppendDma;
  DMA_RESET_HANDLER                 ResetChannel;
  UNICODE_STRING                    FriendlyName;
} NET_DMA_PROVIDER_CHARACTERISTICS, *PNET_DMA_PROVIDER_CHARACTERISTICS;

成员

MajorVersion

DMA 提供程序驱动程序的主要版本号。

MinorVersion

DMA 提供程序驱动程序的次要版本号。

Size

此NET_DMA_PROVIDER_CHARACTERISTICS结构的大小(以字节为单位)。 将此成员设置为 sizeof (NET_DMA_PROVIDER_CHARACTERISTICS) 。

Flags

DMA 提供程序特征标志。 NetDMA 1.0 和 1.1 驱动程序将此成员设置为零。

NetDMA 2.0 及更高版本的驱动程序可以使用以下标志。

NET_DMA_PROVIDER_CHARACTERISTICS_DCA_SUPPORTED

NetDMA 提供程序支持 直接缓存访问 (DCA)

PhysicalDeviceObject

与 DMA 提供程序关联的物理设备对象 (PDO) 。 即插即用 (PnP) 管理器向 AddDevice 例程提供指向 PhysicalDeviceObject 参数上的 PDO 的指针。

MaxDmaChannelCount

DMA 提供程序可以支持的最大 DMA 通道数。

SetDmaChannelCpuAffinity

的入口点 ProviderSetDmaChannelCpuAffinity 函数。

AllocateDmaChannel

的入口点 ProviderAllocateDmaChannel 函数。

FreeDmaChannel

的入口点 ProviderFreeDmaChannel 函数。

StartDma

ProviderStartDma 函数的入口点。

SuspendDma

ProviderSuspendDma 函数的入口点。 如果不支持此函数,请将此成员设置为 NULL

ResumeDma

ProviderResumeDma 函数的入口点。 如果不支持此函数,请将此成员设置为 NULL

AbortDma

ProviderAbortDma 函数的入口点。 如果不支持此函数,请将此成员设置为 NULL

AppendDma

ProviderAppendDma 函数的入口点。

ResetChannel

ProviderResetChannel 函数的入口点。 如果不支持此函数,请将此成员设置为 NULL

FriendlyName

一个 Unicode 字符串,表示 NetDMA 提供程序驱动程序的用户可读说明。

备注

若要注册 DMA 提供程序,DMA 提供程序驱动程序从其 AddDevice 例程调用 NetDmaRegisterProvider 函数。

DMA 提供程序驱动程序在 NetDmaRegisterProviderProviderCharacteristics 参数中提供NET_DMA_PROVIDER_CHARACTERISTICS结构。

要求

   
最低受支持的客户端 在 Windows Server 2008 中支持 NetDMA 2.0 驱动程序。 (在 Windows Server 2008 中添加了 NetDMA 1.1 驱动程序支持的 FriendlyName 成员.) 。 在 Windows Server 2008 和 Windows Vista 中支持 NetDMA 1.0 驱动程序。
Header netdma.h (包括 Netdma.h)

另请参阅

AddDevice

NetDmaRegisterProvider

ProviderAbortDma

ProviderAllocateDmaChannel

ProviderAppendDma

ProviderFreeDmaChannel

ProviderResetChannel

ProviderResumeDma

ProviderSetDmaChannelCpuAffinity

ProviderStartDma

ProviderSuspendDma