Funzione CcGetDirtyPages (ntifs.h)

La routine CcGetDirtyPages cerca pagine sporche in tutti i file corrispondenti a un determinato handle di log.

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 pagina sporca dalle pagine trovate. Questa routine, chiamata per ogni pagina sporca trovata, viene dichiarata come indicato di seguito:

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 sporca.

FileOffset

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

Length

Lunghezza, in byte, della pagina sporca.

OldestLsn

Numero di sequenza logica meno recente (LSN) trovato nella pagina sporca.

Più recentilsn

LSN più recente trovato nella pagina sporca.

Contesto1

Primo parametro di contesto.

Contesto2

Secondo parametro di contesto.

[in] Context1

Primo parametro di contesto da passare a DirtyPageRoutine.

[in] Context2

Secondo parametro di contesto da passare a DirtyPageRoutine.

Valore restituito

CcGetDirtyPages restituisce l'LSN meno recente trovato nel set di pagine sporche. Se non sono presenti pagine sporche, CcGetDirtyPages restituisce zero.

Commenti

I file system chiamano CcGetDirtyPages per restituire pagine sporche in tutti i file corrispondenti a un determinato handle di log. CcGetDirtyPages cerca pagine sporche in tutti i file corrispondenti a LogHandle specificati e chiama DirtyPageRoutine per ogni pagina.

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

Requisiti

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

Vedi anche

CcSetDirtyPinnedData

CcSetLogHandleForFile