ADDRESS_AND_SIZE_TO_SPAN_PAGES マクロ (wdm.h)

ADDRESS_AND_SIZE_TO_SPAN_PAGES は、仮想アドレスによって定義された仮想範囲にまたがるページ数と、転送要求のサイズ (バイト単位) を返すマクロです。

構文

void ADDRESS_AND_SIZE_TO_SPAN_PAGES(
  [in]  Va,
  [in]  Size
);

パラメーター

[in] Va

範囲のベースである仮想アドレスへのポインター。

[in] Size

転送要求のサイズをバイト単位で指定します。

戻り値

なし

解説

ADDRESS_AND_SIZE_TO_SPAN_PAGES からは、Va から始まる仮想範囲にまたがるページ数が返されます。

DMA 転送を行うドライバーにより ADDRESS_AND_SIZE_TO_SPAN_PAGES が呼び出され、転送要求を一連のデバイス DMA 操作に分割する必要があるかどうかが判断されます。

ドライバーでは、システム定義定数 PAGE_SIZE を使用して、転送されるバイト数が現在のプラットフォームの仮想メモリ ページ サイズよりも小さいかどうかを判断できます。

ADDRESS_AND_SIZE_TO_SPAN_PAGES の呼び出し元は、どの IRQL で実行されていてもかまいません。 呼び出し元は、指定したパラメーターによってメモリ オーバーフローが確実に発生しないようにする必要があります。

要件

要件
サポートされている最小のクライアント Windows 2000
Header wdm.h
IRQL 任意のレベル