Compartir a través de


Función MmPrefetchPages (ntifs.h)

La rutina MmPrefetchPages lee grupos de páginas del almacenamiento secundario de forma óptima.

Sintaxis

NTSTATUS MmPrefetchPages(
  [in] ULONG      NumberOfLists,
  [in] PREAD_LIST *ReadLists
);

Parámetros

[in] NumberOfLists

Número de listas de lectura de la matriz pasadas en el parámetro ReadLists .

[in] ReadLists

Puntero a una matriz de listas de lectura que se van a capturar previamente.

Valor devuelto

MmPrefetchPages devuelve STATUS_SUCCESS o un estado de error adecuado que representa el estado de finalización final de la operación. Entre los posibles códigos de estado de error se incluyen los siguientes:

Código devuelto Descripción
STATUS_INSUFFICIENT_RESOURCES No se pudo asignar un búfer temporal requerido por esta función.
STATUS_INVALID_PARAMETER_1 No se puede capturar previamente una sección de ReadLists (por ejemplo, una sección física o con respaldo de archivo de página) o se proporcionó un valor NumberOfLists no válido.

MmPrefetchPages devuelve STATUS_SUCCESS si se ha realizado correctamente y también si todas las páginas solicitadas ya estaban en memoria, lo que indica que no se requerían lecturas del almacenamiento secundario.

Comentarios

MmPrefetchPages lee páginas del almacenamiento secundario que se describen en las listas de lectura de la manera óptima. El autor de la llamada crea una lista de varios objetos de archivo y desplazamientos de bloques lógicos, pasándolos a la función MmPrefetchPages que examina las páginas internas, leyendo en aquellos que aún no son válidos o en transición. Las páginas se leen con una sola lectura, usando una página ficticía para salvar pequeñas lagunas. Si la brecha es "grande", se emiten lecturas independientes.

Nota

El objeto de sección ya debe existir para que el archivo se pueda capturar previamente. Se puede obtener un identificador de sección llamando a ZwCreateSection.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)