Compartir a través de


estructura DISK_CACHE_INFORMATION (ntdddisk.h)

La estructura DISK_CACHE_INFORMATION se usa con la solicitud IOCTL_DISK_GET_CACHE_INFORMATION para recuperar información de caché.

Sintaxis

typedef struct _DISK_CACHE_INFORMATION {
  BOOLEAN                       ParametersSavable;
  BOOLEAN                       ReadCacheEnabled;
  BOOLEAN                       WriteCacheEnabled;
  DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority;
  DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority;
  USHORT                        DisablePrefetchTransferLength;
  BOOLEAN                       PrefetchScalar;
  union {
    struct {
      USHORT Minimum;
      USHORT Maximum;
      USHORT MaximumBlocks;
    } ScalarPrefetch;
    struct {
      USHORT Minimum;
      USHORT Maximum;
    } BlockPrefetch;
  } DUMMYUNIONNAME;
} DISK_CACHE_INFORMATION, *PDISK_CACHE_INFORMATION;

Miembros

ParametersSavable

Indica, cuando se establece en 1, que el dispositivo es capaz de guardar cualquier parámetro en almacenamiento no volátil.

ReadCacheEnabled

Indica, cuando se establece en 1, que la memoria caché de lectura está habilitada.

WriteCacheEnabled

Indica, cuando se establece en 1, que la memoria caché de escritura está habilitada.

ReadRetentionPriority

Determina la probabilidad de que varios tipos de datos permanezcan en la memoria caché. Por ejemplo, por ejemplo, los datos almacenados en caché de una operación READ o WRITE pueden tener una prioridad diferente a los datos almacenados en caché en otras circunstancias, como las operaciones de captura previa. Por lo tanto, un valor de EqualPriority indica que no se mantiene ningún dato en la memoria caché de forma preferencial. Cuando ReadRetentionPriority se establece en EqualPriority, todos los tipos de datos tienen acceso igual a la memoria caché. Por otro lado, un valor de KeepPrefetchedData indica que se debe dar una preferencia a los datos capturados previamente mientras que un valor de KeepReadData indica que se debe dar una preferencia a los datos almacenados en caché desde una operación READ. Para obtener más información sobre los valores que se pueden asignar a este miembro, vea la enumeración DISK_CACHE_RETENTION_PRIORITY .

WriteRetentionPriority

Vea la discusión en ReadRetentionPriority.

DisablePrefetchTransferLength

Deshabilita la captura previa. La captura previa puede deshabilitarse siempre que el número de bloques solicitados supere el valor de DisablePrefetchTransferLength. Cuando es cero, la captura previa está deshabilitada independientemente del tamaño de la solicitud de bloque.

PrefetchScalar

Si es TRUE, indica que ScalarPrefetch.Maximum debe usarse junto con la longitud de transferencia para calcular la cantidad de datos que se pueden capturar previamente. Si es FALSE, BlockPrefetch.Maximum será el número máximo de bloques de disco que se pueden capturar previamente.

DUMMYUNIONNAME

DUMMYUNIONNAME.ScalarPrefetch

DUMMYUNIONNAME.ScalarPrefetch.Minimum

Contiene el multiplicador escalar de la longitud de transferencia de la solicitud cuando PrefetchScalar es TRUE. Si PrefetchScalar es TRUE, el valor de ScalarPrefetch.Minimum se multiplica por la longitud de la transferencia para obtener la cantidad mínima de datos que se pueden capturar previamente en la memoria caché en una operación de disco.

DUMMYUNIONNAME.ScalarPrefetch.Maximum

Contiene el multiplicador escalar de la longitud de transferencia de la solicitud cuando PrefetchScalar es TRUE. Si PrefetchScalar es TRUE, el valor de ScalarPrefetch.Maximum se multiplica por la longitud de transferencia para obtener la cantidad máxima de datos que se pueden capturar previamente en la memoria caché en una operación de disco.

DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks

Contiene el tamaño máximo, en bloques, de la longitud de transferencia.

DUMMYUNIONNAME.BlockPrefetch

DUMMYUNIONNAME.BlockPrefetch.Minimum

Contiene el multiplicador escalar de la longitud de transferencia de la solicitud cuando PrefetchScalar es TRUE. Si PrefetchScalar es TRUE, el valor de ScalarPrefetch.Minimum se multiplica por la longitud de la transferencia para obtener la cantidad mínima de datos que se pueden capturar previamente en la memoria caché en una operación de disco.

DUMMYUNIONNAME.BlockPrefetch.Maximum

Contiene el multiplicador escalar de la longitud de transferencia de la solicitud cuando PrefetchScalar es TRUE. Si PrefetchScalar es TRUE, el valor de ScalarPrefetch.Maximum se multiplica por la longitud de transferencia para obtener la cantidad máxima de datos que se pueden capturar previamente en la memoria caché en una operación de disco.

Requisitos

Requisito Valor
Header ntdddisk.h (include Ntdddisk.h)

Consulte también

DISK_CACHE_INFORMATION

IOCTL_DISK_GET_CACHE_INFORMATION