Freigeben über


ADDRESS_AND_SIZE_TO_SPAN_PAGES Makro (wdm.h)

Das ADDRESS_AND_SIZE_TO_SPAN_PAGES Makro gibt die Anzahl der Seiten zurück, die durch den virtuellen Bereich überspannt sind, der durch eine virtuelle Adresse definiert ist, und die Größe einer Übertragungsanforderung in Bytes.

Syntax

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

Parameter

[in] Va

Zeiger auf die virtuelle Adresse, die die Basis des Bereichs ist.

[in] Size

Gibt die Größe der Übertragungsanforderung in Byte an.

Rückgabewert

Keine

Bemerkungen

ADDRESS_AND_SIZE_TO_SPAN_PAGES gibt die Anzahl der Seiten zurück, die vom virtuellen Bereich ab Va überspannt werden.

Treiber, die DMA-Übertragungen durchführen, rufen ADDRESS_AND_SIZE_TO_SPAN_PAGES auf, um zu bestimmen, ob eine Übertragungsanforderung in eine Sequenz von DMA-Vorgängen des Geräts aufgeteilt werden muss.

Ein Treiber kann die systemdefinierte konstante PAGE_SIZE verwenden, um zu bestimmen, ob die Anzahl der zu übertragenden Bytes kleiner als die Größe der virtuellen Speicherseite der aktuellen Plattform ist.

Aufrufer von ADDRESS_AND_SIZE_TO_SPAN_PAGES können in jedem IRQL ausgeführt werden. Der Aufrufer muss sicherstellen, dass die angegebenen Parameter keinen Speicherüberlauf verursachen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000
Kopfzeile wdm.h
IRQL Beliebige Ebene