PVOID MmAllocateContiguousMemory( IN SIZE_T NumberOfBytes, IN PHYSICAL_ADDRESS HighestAcceptableAddress ); Routine Description: This function allocates a range of physically contiguous non-paged pool. This routine is designed to be used by a driver's initialization routine to allocate a contiguous block of physical memory for issuing DMA requests from. Arguments: NumberOfBytes - Supplies the number of bytes to allocate. HighestAcceptableAddress - Supplies the highest physical address which is valid for the allocation. For example, if the device can only reference physical memory in the lower 16MB this value would be set to 0xFFFFFF (16Mb - 1). Return Value: NULL - a contiguous range could not be found to satisfy the request. NON-NULL - Returns a pointer (virtual address in the nonpaged portion of the system) to the allocated physically contiguous memory. Environment: Kernel mode, IRQL of DISPATCH_LEVEL or below.