Condividi tramite


Funzione CcGetDirtyPages (ntifs.h)

La routine CcGetDirtyPages cerca pagine dirty in tutti i file che corrispondono a un handle di log specificato.

Sintassi

LARGE_INTEGER CcGetDirtyPages(
  [in] PVOID               LogHandle,
  [in] PDIRTY_PAGE_ROUTINE DirtyPageRoutine,
  [in] PVOID               Context1,
  [in] PVOID               Context2
);

Parametri

[in] LogHandle

Handle di log archiviato da una chiamata precedente a CcSetLogHandleForFile.

[in] DirtyPageRoutine

Puntatore a una routine di callback che crea una tabella di pagine dirty dalle pagine trovate. Questa routine, chiamata per ogni pagina dirty trovata, viene dichiarata come segue:

typedef
VOID (*PDIRTY_PAGE_ROUTINE) (
            IN PFILE_OBJECT FileObject,
            IN PLARGE_INTEGER FileOffset,
            IN ULONG Length,
            IN PLARGE_INTEGER OldestLsn,
            IN PLARGE_INTEGER NewestLsn,
            IN PVOID Context1,
            IN PVOID Context2
            );

FileObject

Puntatore all'oggetto file per il file contenente la pagina dirty.

FileOffset

Puntatore a una variabile che specifica l'offset di byte iniziale della pagina dirty all'interno del file memorizzato nella cache.

Lunghezza

Lunghezza, in byte, della pagina dirty.

OldestLsn

Numero di sequenza logico meno recente (LSN) trovato nella pagina dirty.

Più recentiLsn

LSN più recente trovato nella pagina dirty.

Context1

Primo parametro di contesto.

Context2

Secondo parametro di contesto.

[in] Context1

Primo parametro di contesto da passare al DirtyPageRoutine.

[in] Context2

Secondo parametro di contesto da passare al DirtyPageRoutine.

Valore restituito

CcGetDirtyPages restituisce il LSN meno recente trovato nel set di pagine dirty. Se non sono presenti pagine dirty, CcGetDirtyPages restituisce zero.

Osservazioni

I file system chiamano CcGetDirtyPages per restituire pagine dirty in tutti i file che corrispondono a un handle di log specificato. CcGetDirtyPages cerca pagine dirty in tutti i file corrispondenti all' LogHandle e chiama il DirtyPageRoutine per ogni pagina.

Per impostare un handle di log per un file, usare CcSetLogHandleForFile.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP
piattaforma di destinazione Universale
intestazione ntifs.h (include Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Vedere anche

CcSetDirtyPinnedData

CcSetLogHandleForFile