Partager via


SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT structure (ntifs.h)

Une fois que Windows a SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT contrôle de système de fichiers pour un fichier, il examine les allocations au fichier.

Une fois ce contrôle de système de fichiers émis pour un fichier, les allocations suivantes au fichier sont examinées pour voir si le décalage donné est alloué. Dans ce cas, l’adresse physique de l’allocation sera alignée sur la valeur AlignmentValue donnée si suffisamment d’espace libre est disponible dans les régions alignées.

Syntaxe

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;

Membres

Flags

Indicateurs utilisés pour le contrôle du système de fichiers. Deux indicateurs peuvent être utilisés :

Valeur Signification
DAX_ALLOC_ALIGNMENT_FLAG_MANDATORY Si l’allocation correspondant à AlignmentShift (ou au moins FallbackAlignmentShift si spécifié) est introuvable, l’opération du système de fichiers échoue (par exemple, en étendant le fichier).
DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED Indique que le champ FallbackAlignmentShift est présent dans la structure d’entrée et indique un alignement de secours si l’alignement optimal n’est pas disponible.

AlignmentShift

Taille de bloc utilisée pour aligner le décalage donné du fichier. Le fichier est alloué afin que l’adresse physique du fichier soit alignée sur cette taille de bloc.

La valeur d’alignement réelle est donnée par :

AlignmentValue = (1 << AlignmentShift);

FileOffsetToAlign

Décalage de fichier qui doit être aligné sur la valeur AlignmentValue donnée. Il doit s’agir d’un cluster aligné.

Le gestionnaire de mémoire prend en charge une page volumineuse uniquement si le décalage du fichier et l’adresse physique sont alignés de 1 Go.

FallbackAlignmentShift

Si DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED est présent dans indicateurs, ce champ spécifie une taille de bloc de secours pour aligner le décalage donné du fichier chaque fois que l’allocation correspondant à AlignmentShift est introuvable.

Remarques

Pour réinitialiser la contrainte d’alignement, vous pouvez émettre ce FICHIER FSCTL avec une Valeur d’alignement de 1 ; autrement dit, AlignmentShift as 0.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1709
En-tête ntifs.h (include Ntifs.h)