英語で読む

次の方法で共有


NDIS_SHARED_MEMORY_PARAMETERS構造体 (ndis.h)

NDIS_SHARED_MEMORY_PARAMETERS構造体は、共有メモリ割り当て要求の共有メモリ パラメーターを指定します。

構文

typedef struct _NDIS_SHARED_MEMORY_PARAMETERS {
  NDIS_OBJECT_HEADER       Header;
  ULONG                    Flags;
  NDIS_RECEIVE_QUEUE_ID    QueueId;
  NDIS_HANDLE              SharedMemoryHandle;
  NODE_REQUIREMENT         PreferredNode;
  NDIS_SHARED_MEMORY_USAGE Usage;
  ULONG                    Length;
  PVOID                    VirtualAddress;
  ULONG                    SGListBufferLength;
  PSCATTER_GATHER_LIST     SGListBuffer;
  NDIS_NIC_SWITCH_VPORT_ID VPortId;
} NDIS_SHARED_MEMORY_PARAMETERS, *PNDIS_SHARED_MEMORY_PARAMETERS;

メンバーズ

Header

NDIS_SHARED_MEMORY_PARAMETERS構造体の型、リビジョン、およびサイズ。 このメンバーは、NDIS_OBJECT_HEADER 構造体として書式設定されます。

ミニポート ドライバーは、ヘッダー メンバーをNDIS_OBJECT_TYPE_DEFAULTに設定する必要があります。 NDIS_SHARED_MEMORY_PARAMETERS構造体のバージョンを指定するには、ドライバーは、ヘッダーリビジョン メンバーを次のいずれかの値に設定する必要があります。

NDIS_SHARED_MEMORY_PARAMETERS_REVISION_2

NDIS 6.30 VPortId を追加しました。

Size メンバーをNDIS_SIZEOF_SHARED_MEMORY_PARAMETERS_REVISION_2に設定します。

NDIS_SHARED_MEMORY_PARAMETERS_REVISION_1

NDIS 6.20 の元のバージョン。

Size メンバーをNDIS_SIZEOF_SHARED_MEMORY_PARAMETERS_REVISION_1に設定します。

Flags

次の値のビットごとの OR を含む UCHAR 値。

NDIS_SHARED_MEM_PARAMETERS_CONTIGOUS

共有メモリは、連続したメモリ ブロック内にあります。

QueueId

仮想マシン キュー (VMQ) または単一ルート I/O 仮想化 (SR-IOV) を含むNDIS_RECEIVE_QUEUE_ID値は、キュー識別子を受信します。 この識別子は、0 からミニポート アダプターがサポートするキューの数の間の整数です。 NDIS_DEFAULT_RECEIVE_QUEUE_IDの値は、既定の受信キューを指定します。

Windows Server 2012 以降では、SR-IOV インターフェイスは、既定の仮想ポートと既定以外の仮想ポート (VPorts) の両方で既定の受信キューのみをサポートします。 SR-IOV インターフェイスをサポートするミニポート ドライバーは、QueueId メンバーをNDIS_DEFAULT_RECEIVE_QUEUE_IDに設定する必要があります。
 

SharedMemoryHandle

共有メモリのブロックを識別するNDIS_HANDLE値。 NDIS から戻る前に、このハンドルを提供します。NdisAllocateSharedMemory 関数を します。

PreferredNode

メモリの割り当て中に使用する優先ノードを示すNODE_REQUIREMENT値。 ドライバーに基本設定がない場合は、値をMM_ANY_NODE_OKに設定する必要があります。

Usage

共有メモリの目的を指定する NDIS_SHARED_MEMORY_USAGE 列挙値。

Length

共有メモリ ブロックの長さ (バイト単位) を含む ULONG 値。

VirtualAddress

共有メモリのベース仮想アドレスを含む PVOID 値。 NDIS は、NdisAllocateSharedMemory 関数から戻る前に、この値を提供します。

SGListBufferLength

散布図収集リスト バッファーの長さ (バイト単位) を含む ULONG 値。

SGListBuffer

SCATTER_GATHER_LIST 構造体へのポインター。

VPortId

共有メモリを割り当てる仮想ポート (VPort) 識別子を指定するNDIS_NIC_SWITCH_VPORT_ID値。 この値は、ミニポート アダプターの物理関数 (PF) に接続されている既定以外の VPort の識別子である必要があります。

注: VMQ インターフェイス サポートするミニポート ドライバーは、このメンバーを 0 に設定する必要があります。 SR-IOV インターフェイスをサポートするミニポート ドライバーは、このメンバーを 0 (NDIS_DEFAULT_VPORT_ID) に設定しないでください。
 

備考

NDIS_SHARED_MEMORY_PARAMETERS構造体は、受信キューの共有メモリ割り当て要求の共有メモリ パラメーターを指定します。

NDIS ドライバーは、この構造体を NdisAllocateSharedMemory 関数に渡します。NDIS は、この構造体を NetAllocateSharedMemory 関数 (ALLOCATE_SHARED_MEMORY_HANDLER エントリ ポイント) に渡します。

必要条件

要件 価値
サポートされる最小クライアント NDIS 6.20 以降でサポートされています。
ヘッダー ndis.h (Ndis.h を含む)

関連項目

NDIS_OBJECT_HEADER

NDIS_SHARED_MEMORY_USAGE

NdisAllocateSharedMemory

NetAllocateSharedMemory

SCATTER_GATHER_LIST