次の方法で共有


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 構造体として書式設定されます。

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

NDIS_SHARED_MEMORY_PARAMETERS_REVISION_2

NDIS 6.30 の VPortId を 追加しました。

[サイズ] メンバーを [NDIS_SIZEOF_SHARED_MEMORY_PARAMETERS_REVISION_2] に設定します。

NDIS_SHARED_MEMORY_PARAMETERS_REVISION_1

NDIS 6.20 の元のバージョン。

[サイズ] メンバーを [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 以降でサポートされています。
Header ndis.h (Ndis.h を含む)

こちらもご覧ください

NDIS_OBJECT_HEADER

NDIS_SHARED_MEMORY_USAGE

NdisAllocateSharedMemory

NetAllocateSharedMemory

SCATTER_GATHER_LIST