Windows Driver Kit: Kernel-Mode Driver Architecture
RtlMoveMemory
The RtlMoveMemory routine moves memory either forward or backward, aligned or unaligned, in 4-byte blocks, followed by any remaining bytes.
VOID
RtlMoveMemory(
IN VOID UNALIGNED *Destination,
IN CONST VOID UNALIGNED *Source,
IN SIZE_T Length
);
Parameters
- Destination
- Pointer to the destination of the move.
- Source
- Pointer to the memory to be copied.
- Length
- Specifies the number of bytes to be copied.
Return Value
None
Comments
The (Source + Length) can overlap the Destination range passed in to RtlMoveMemory.
Callers of RtlMoveMemory can be running at any IRQL if both memory blocks are resident. Otherwise, the caller must be running at IRQL <= APC_LEVEL.
Requirements
IRQL: Any level (See Comments section)
Headers: Declared in Wdm.h. Include Wdm.h, Ntddk.h, or Ntifs.h.
See Also
RtlCopyMemory