次の方法で共有


PGET_DMA_ALIGNMENT コールバック関数 (wdm.h)

GetDmaAlignment ルーチンは、DMA システムの配置要件を返します。

構文

PGET_DMA_ALIGNMENT PgetDmaAlignment;

ULONG PgetDmaAlignment(
  [in] PDMA_ADAPTER DmaAdapter
)
{...}

パラメーター

[in] DmaAdapter

バス マスター アダプターまたは DMA コントローラーを表す IoGetDmaAdapter によって返されるDMA_ADAPTER構造体へのポインター。

戻り値

GetDmaAlignment は、DMA システムのアラインメント要件をバイト単位で返します。 DMA バッファーの開始アドレスと長さは、この値の倍数である必要があります。

注釈

GetDmaAlignment は、名前で直接呼び出すことができるシステム ルーチンではありません。 このルーチンは、 DMA_OPERATIONS 構造体で返されたアドレスからのポインターによってのみ呼び出されます。 ドライバーは、 IoGetDmaAdapter を呼び出して、このルーチンのアドレスを取得します。

ドライバーは、割り当てる DMA バッファーの配置要件を決定するには、このルーチンを呼び出すことができます。 返される値は、デバイス オブジェクトの AlignmentRequirement フィールドを設定するために使用する必要があります。 追加のハードウェア デバイスの制限により、ドライバーでこの値を増やす必要がある場合があります。 詳細については、「 デバイス オブジェクトの初期化」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム デスクトップ
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 IrqlDispatch(wdm)

こちらもご覧ください

DEVICE_OBJECT

DMA_ADAPTER

DMA_OPERATIONS

IoGetDmaAdapter