NdisAllocateSharedMemory 関数 (ndis.h)
NdisAllocateSharedMemory 関数は、共有メモリ プロバイダーから共有メモリを割り当てます。
構文
NDIS_STATUS NdisAllocateSharedMemory(
[in] NDIS_HANDLE NdisHandle,
[in] PNDIS_SHARED_MEMORY_PARAMETERS SharedMemoryParameters,
[in, out] PNDIS_HANDLE pAllocationHandle
);
パラメーター
[in] NdisHandle
呼び出し元の初期化中に取得された NDIS ドライバーまたはインスタンス ハンドル。 たとえば、ミニポート ドライバーは、から取得した NDIS ハンドルを使用できます。NdisMRegisterMiniportDriver またはミニポートInitializeEx 関数 します。 その他の NDIS ドライバーは、次の関数のハンドルを使用できます。
NdisRegisterProtocolDriver の
NdisOpenAdapterEx の
[in] SharedMemoryParameters
へのポインター NDIS_SHARED_MEMORY_PARAMETERS 共有メモリの要求された属性を定義する構造体です。
[in, out] pAllocationHandle
割り当てられた共有メモリを識別するハンドルの場所へのポインター。 このハンドルは、関数が戻ったとき、または関数が失敗した場合に NULL 場合に使用できます。 呼び出し元は、このハンドルを使用して、正常に割り当てられた共有メモリを解放する必要があります。
戻り値
NdisAllocateSharedMemory は、次の状態値を返すことができます。
リターン コード | 形容 |
---|---|
|
操作が正常に完了しました。 |
|
操作を完了するためのリソースが不足していたため、操作が失敗しました。 |
|
入力パラメーターが無効なため、操作に失敗しました。 |
|
指定されていない理由で操作が失敗しました。 |
備考
SharedMemoryParameters パラメーターには、 へのポインターが含まれています。 NDIS_SHARED_MEMORY_PARAMETERS 共有メモリの要求された属性を定義する構造体です。 NDIS_SHARED_MEM_PARAMETERS_CONTIGUOUS フラグが Flags メンバーで設定されていない場合は、連続していないメモリに含まれる分散収集リストで共有メモリを指定できます。
NDIS は、NdisAllocateSharedMemoryへの呼び出しのコンテキストから共有メモリ プロバイダーの NetAllocateSharedMemory 関数を呼び出します。
ドライバーは、NdisFreeSharedMemory 関数を呼び出して、NdisAllocateSharedMemory 割り当てる共有メモリを解放する必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | NDIS 6.20 以降でサポートされています。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | ndis.h (Ndis.h を含む) |
ライブラリ | Ndis.lib |
IRQL | PASSIVE_LEVEL |
関連項目
NdisFRegisterFilterDriver の
NdisFreeSharedMemory の
NdisMRegisterDmaChannel の
NdisMRegisterMiniportDriver の
NdisMRegisterScatterGatherDma のNdisOpenAdapterEx の
NdisRegisterProtocolDriver の
NetAllocateSharedMemory の