Поделиться через


структура NET_DMA_PROVIDER_CHARACTERISTICS (netdma.h)

примечание Интерфейс NetDMA не поддерживается в Windows 8 и более поздних версиях.
 
Структура 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

Объект физического устройства (PDO), связанный с поставщиком DMA. Диспетчер Plug and Play (PnP) предоставляет указатель на PDO в параметре PhysicalDeviceObject в подпрограмму AddDevice.

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

Строка Юникода, представляющая удобочитаемое пользователем описание драйвера поставщика NetDMA.

Замечания

Чтобы зарегистрировать поставщика DMA, драйвер поставщика DMA вызывает функцию NetDmaRegisterProvider из подпрограммы AddDev ice.

Драйвер поставщика DMA предоставляет структуру NET_DMA_PROVIDER_CHARACTERISTICS в параметре ProviderCharacteristics параметра NetDmaRegisterProvider.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NetDMA 2.0 в Windows Server 2008. (Добавлен элемент FriendlyName.) Поддерживается для драйверов NetDMA 1.1 в Windows Server 2008. Поддерживается для драйверов NetDMA 1.0 в Windows Server 2008 и Windows Vista.
заголовка netdma.h (include Netdma.h)

См. также

AddDevice

NetDmaRegisterProvider

ProviderAbortDma

ProviderAllocateDmaChannel

providerAppendDma

ProviderFreeDmaChannel

ProviderResetChannel

ProviderResumeDma

ProviderSetDmaChannelCpuAffinity

ProviderStartDma

ProviderSuspendDma