Export (0) Print
Expand All

MmPrefetchPages routine

The MmPrefetchPages routine reads groups of pages from secondary storage in the optimal fashion.

Syntax


NTSTATUS MmPrefetchPages(
  _In_  ULONG      NumberOfLists,
  _In_  PREAD_LIST *ReadLists
);

Parameters

NumberOfLists [in]

The number of read-lists in the array passed in the ReadLists parameter.

ReadLists [in]

A pointer to an array of read-lists to be prefetched.

Return value

MmPrefetchPages returns STATUS_SUCCESS or an appropriate error status representing the final completion status of the operation. Possible error status codes include the following:

Return codeDescription
STATUS_INSUFFICIENT_RESOURCES

A temporary buffer required by this function could not be allocated.

 

MmPrefetchPages returns STATUS_SUCCESS on success and also if all of the requested pages were already in memory indicating no reads from secondary storage were required.

Remarks

MmPrefetchPages reads pages from secondary storage described in the read-lists in the optimal fashion. The caller builds a list of various file objects and logical block offsets, passing them to the MmPrefetchPages function which examines the internal pages, reading in those that are not already valid or in transition. The pages are read with a single read, using a dummy page to bridge small gaps. If the gap is "large", then separate reads are issued.

Requirements

Target platform

Universal

Version

This routine is available on Microsoft Windows XP and later.

Header

Ntifs.h (include Ntifs.h or Ntifs.h)

Library

Ntoskrnl.lib

IRQL

PASSIVE_LEVEL

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft