Développer Réduire

MmAllocateMappingAddress routine

The MmAllocateMappingAddress routine reserves a range of system virtual address space of the specified size.

Syntax


PVOID MmAllocateMappingAddress(
  _In_  SIZE_T NumberOfBytes,
  _In_  ULONG PoolTag
);

Parameters

NumberOfBytes [in]

Specifies the number of bytes to reserve.

PoolTag [in]

Specifies a four-character tag used to identify the buffer. Use a distinct PoolTag tag for each allocation code path. For a description of pool tags, see ExAllocatePoolWithTag.

Return value

MmAllocateMappingAddress returns a pointer to the beginning of the reserved memory buffer.

Remarks

MmAllocateMappingAddress reserves a system virtual address range for the caller to use. No physical memory is allocated for the virtual address range and the virtual memory cannot be accessed until it is mapped by the MmMapLockedPagesWithReservedMapping routine. The caller unmaps the reserved memory range by calling the MmUnmapReservedMapping routine. Finally, the caller can free the reserved range by calling MmFreeMappingAddress.

Requirements

Version

Available in Windows XP and later versions of Windows.

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

Library

Ntoskrnl.lib

IRQL

<=APC_LEVEL

See also

MmFreeMappingAddress
MmMapLockedPagesWithReservedMapping
MmUnmapReservedMapping

 

 

Send comments about this topic to Microsoft

Afficher:
© 2014 Microsoft