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) |