Freigeben über


NET_DMA_PROVIDER_CHARACTERISTICS Struktur (netdma.h)

Hinweis Die NetDMA-Schnittstelle wird in Windows 8 und höher nicht unterstützt.
 
Die NET_DMA_PROVIDER_CHARACTERISTICS-Struktur gibt die Merkmale für einen NetDMA-Anbieter an, einschließlich der Einstiegspunkte für die ProviderXxx-Funktionen .

Syntax

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;

Member

MajorVersion

Die Hauptversionsnummer des DMA-Anbietertreibers.

MinorVersion

Die Nebenversionsnummer des DMA-Anbietertreibers.

Size

Die Größe dieser NET_DMA_PROVIDER_CHARACTERISTICS Struktur in Bytes. Legen Sie dieses Element auf sizeof(NET_DMA_PROVIDER_CHARACTERISTICS) fest.

Flags

Kennzeichen des DMA-Anbieters. Die NetDMA 1.0- und 1.1-Treiber legen dieses Element auf 0 fest.

NetDMA 2.0 und höher können die folgenden Flags verwenden.

NET_DMA_PROVIDER_CHARACTERISTICS_DCA_SUPPORTED

Der NetDMA-Anbieter unterstützt den direkten Cachezugriff (Direct Cache Access, DCA).

PhysicalDeviceObject

Das physische Geräteobjekt (PDO), das dem DMA-Anbieter zugeordnet ist. Der Plug & Play-Manager (PnP) stellt einen Zeiger auf die PDO am Parameter PhysicalDeviceObject auf die AddDevice-Routine bereit.

MaxDmaChannelCount

Die maximale Anzahl von DMA-Kanälen, die der DMA-Anbieter unterstützen kann.

SetDmaChannelCpuAffinity

Der Einstiegspunkt für die ProviderSetDmaChannelCpuAffinity-Funktion .

AllocateDmaChannel

Der Einstiegspunkt für die ProviderAllocateDmaChannel-Funktion .

FreeDmaChannel

Der Einstiegspunkt für die ProviderFreeDmaChannel-Funktion .

StartDma

Der Einstiegspunkt für die ProviderStartDma-Funktion .

SuspendDma

Der Einstiegspunkt für die ProviderSuspendDma-Funktion . Wenn diese Funktion nicht unterstützt wird, legen Sie diesen Member auf NULL fest.

ResumeDma

Der Einstiegspunkt für die ProviderResumeDma-Funktion . Wenn diese Funktion nicht unterstützt wird, legen Sie diesen Member auf NULL fest.

AbortDma

Der Einstiegspunkt für die ProviderAbortDma-Funktion . Wenn diese Funktion nicht unterstützt wird, legen Sie diesen Member auf NULL fest.

AppendDma

Der Einstiegspunkt für die ProviderAppendDma-Funktion .

ResetChannel

Der Einstiegspunkt für die ProviderResetChannel-Funktion . Wenn diese Funktion nicht unterstützt wird, legen Sie diesen Member auf NULL fest.

FriendlyName

Eine Unicode-Zeichenfolge, die die lesbare Beschreibung des NetDMA-Anbietertreibers darstellt.

Hinweise

Um einen DMA-Anbieter zu registrieren, ruft ein DMA-Anbietertreiber die NetDmaRegisterProvider-Funktion aus seiner AddDevice-Routine auf.

Der DMA-Anbietertreiber stellt eine NET_DMA_PROVIDER_CHARACTERISTICS-Struktur am ProviderCharacteristics-Parameter von NetDmaRegisterProvider bereit.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt für NetDMA 2.0-Treiber in Windows Server 2008. (FriendlyName-Member hinzugefügt.) Unterstützt für NetDMA 1.1-Treiber in Windows Server 2008. Unterstützt für NetDMA 1.0-Treiber in Windows Server 2008 und Windows Vista.
Kopfzeile netdma.h (include Netdma.h)

Weitere Informationen

AddDevice

NetDmaRegisterProvider

ProviderAbortDma

ProviderAllocateDmaChannel

ProviderAppendDma

ProviderFreeDmaChannel

ProviderResetChannel

ProviderResumeDma

ProviderSetDmaChannelCpuAffinity

ProviderStartDma

ProviderSuspendDma