Condividi tramite


struttura SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT (ntifs.h)

Dopo che Windows rilascia il controllo SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT file system per un file, esamina le allocazioni al file.

Dopo che questo controllo del file system viene emesso per un file, le allocazioni seguenti al file verranno esaminate per verificare se l'offset specificato viene allocato. In tal caso, l'indirizzo fisico dell'allocazione verrà allineato al AlignmentValue specificato se nelle aree allineate è disponibile spazio sufficiente.

Sintassi

typedef struct _SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT {
  ULONG     Flags;
  ULONG     AlignmentShift;
  ULONGLONG FileOffsetToAlign;
  ULONG     FallbackAlignmentShift;
} SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT, *PSET_DAX_ALLOC_ALIGNMENT_HINT_INPUT;

Membri

Flags

Flag utilizzati per il controllo file system. È possibile usare due flag:

Valore Significato
DAX_ALLOC_ALIGNMENT_FLAG_MANDATORY Se l'allocazione soddisfa AlignmentShift (o almeno FallbackAlignmentShift se specificato) non è possibile trovare, non è possibile eseguire l'operazione del file system ,ad esempio estendendo il file.
DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED Indica che il campo FallbackAlignmentShift è presente nella struttura di input e indica un allineamento di fallback se l'allineamento ottimale non è disponibile.

AlignmentShift

Dimensione del blocco utilizzata per allineare l'offset specificato del file. Il file viene allocato in modo che l'indirizzo fisico del file sia allineato a questa dimensione del blocco.

Il valore di allineamento effettivo viene assegnato da:

AlignmentValue = (1 << AlignmentShift);

FileOffsetToAlign

Offset del file che deve essere allineato all'oggetto AlignmentValue specificato. Deve essere allineato al cluster.

Memory Manager supporta una pagina enorme solo se l'offset del file e l'indirizzo fisico sono allineati a 1 GB.

FallbackAlignmentShift

Se DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED è presente in Flag, questo campo specifica una dimensione del blocco di fallback per allineare l'offset specificato del file ogni volta che non è stato possibile trovare AlignmentShift soddisfacente per l'allocazione.

Osservazioni

Per reimpostare il vincolo di allineamento, è possibile rilasciare questo valore CON ESTENSIONETL con un AlignmentValue pari a 1; ovvero AlignmentShift come 0.

Fabbisogno

Requisito Valore
client minimo supportato Windows 10, versione 1709
intestazione ntifs.h (include Ntifs.h)