estructura SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT (ntifs.h)

Después de que Windows emite el control del sistema de archivos SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT para un archivo, examina las asignaciones al archivo.

Una vez emitido este control del sistema de archivos para un archivo, se examinarán las siguientes asignaciones al archivo para ver si se asigna el desplazamiento especificado. Si es así, la dirección física de la asignación se alineará con el valor AlignmentValue dado si hay suficiente espacio disponible en las regiones alineadas.

Sintaxis

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;

Miembros

Flags

Marcas usadas para el control del sistema de archivos. Hay dos marcas que se pueden usar:

Valor Significado
DAX_ALLOC_ALIGNMENT_FLAG_MANDATORY Si no se encuentra la asignación que satisface AlignmentShift (o al menos FallbackAlignmentShift si se especifica), produzca un error en la operación del sistema de archivos (por ejemplo, extender el archivo).
DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED Indica que el campo FallbackAlignmentShift está presente en la estructura de entrada e indica una alineación de reserva si la alineación óptima no está disponible.

AlignmentShift

Tamaño de bloque utilizado para alinear el desplazamiento especificado del archivo. El archivo se asigna para que la dirección física del archivo esté alineada con este tamaño de bloque.

El valor de alineación real lo proporcionan:

AlignmentValue = (1 << AlignmentShift);

FileOffsetToAlign

Desplazamiento del archivo que se debe alinear con el valor AlignmentValue especificado. Debe estar alineado con el clúster.

El Administrador de memoria solo admite una página enorme si el desplazamiento del archivo y la dirección física están alineadas con 1 gb.

FallbackAlignmentShift

Si DAX_ALLOC_ALIGNMENT_FLAG_FALLBACK_SPECIFIED está presente en Marcas, este campo especifica un tamaño de bloque de reserva para alinear el desplazamiento especificado del archivo siempre que no se encontró la asignación que satisfaga AlignmentShift.

Comentarios

Para restablecer la restricción de alineación, puede emitir este FSCTL con un AlignmentValue de 1; es decir, AlignmentShift como 0.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10, versión 1709
Encabezado ntifs.h (incluya Ntifs.h)