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 l'emissione di questo controllo del file system per un file, le allocazioni seguenti al file verranno esaminate per verificare se viene allocato l'offset specificato. In tal caso, l'indirizzo fisico dell'allocazione verrà allineato al valore AlignmentValue specificato se lo spazio disponibile è sufficiente nelle aree allineate.

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;

Members

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 l'operazione del file system, ad esempio l'estensione del 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 al valore 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 l'allocazione corrispondente a AlignmentShift.

Commenti

Per reimpostare il vincolo di allineamento, è possibile rilasciare QUESTO VALORE CON UN VALORE AlignmentValue pari a 1; ovvero AlignmentShift come 0.

Requisiti

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