Condividi tramite


Funzione RtlZeroDeviceMemory (wdm.h)

La funzione RtlZeroDeviceMemory è un wrapper pratico intorno a RtlFillDeviceMemory.

Sintassi

volatile void * RtlZeroDeviceMemory(
  [out] volatile void *Destination,
  [in]  size_t        Length
);

Parametri

[out] Destination

Puntatore all'indirizzo iniziale del blocco di memoria da riempire con zero.

[in] Length

Dimensioni del blocco di memoria da riempire con zero, in byte.

Valore restituito

Restituisce il valore di Destination.

Commenti

La funzione RtlZeroDeviceMemory è un wrapper pratico intorno a RtlFillDeviceMemory.

Per altre informazioni, vedere la sezione osservazioni di RtlFillDeviceMemory.

Nota

Questa funzione funziona su tutte le versioni di Windows, non solo sull'ultima versione. È necessario utilizzare il WDK più recente per ottenere la dichiarazione di funzione dall'intestazione wdm.h. È anche necessaria la libreria (volatileaccessk.lib) dall'ultimo WDK. Tuttavia, il driver risultante verrà eseguito correttamente nelle versioni precedenti di Windows.

Esempio

// In this scenario we are setting data on memory mapped
// as "device memory" (for example, memory not backed by RAM) to the value zero. On
// some platforms like ARM64, device memory cannot tolerate
// memory accesses that are not naturally aligned (for example, a 4-byte
// load must be 4-byte aligned). Functions like memset, RtlFillMemory,
// and even RtlFillVolatileMemory may perform unaligned memory accesses
// because it is typically faster to do this.
// To ensure only naturally aligned accesses happen, use RtlFillDeviceMemory.
//
// RtlZeroDeviceMemory is an wrapper around RtlFillDeviceMemory that sets the memory
// to zero.

RtlZeroDeviceMemory(DeviceMemoryBuffer, 100);

Requisiti

Requisito Valore
Intestazione wdm.h (include Wdm.h)
Libreria volatileaccessk.lib (modalità kernel), volatileaccessu.lib (modalità utente)

Vedi anche

RtlFillDeviceMemory