Condividi tramite


struttura DISK_CACHE_INFORMATION (ntdddisk.h)

La struttura DISK_CACHE_INFORMATION viene usata con la richiesta di IOCTL_DISK_GET_CACHE_INFORMATION per recuperare le informazioni della cache.

Sintassi

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;

Members

ParametersSavable

Indica, se impostato su 1, che il dispositivo è in grado di salvare tutti i parametri nell'archiviazione non volatile.

ReadCacheEnabled

Indica, se impostato su 1, che la cache di lettura è abilitata.

WriteCacheEnabled

Indica, se impostato su 1, che la cache di scrittura è abilitata.

ReadRetentionPriority

Determina la probabilità di vari tipi di dati rimanenti nella cache. Per mezzo di questo valore, ad esempio, ai dati memorizzati nella cache da un'operazione READ o WRITE potrebbe essere assegnata una priorità diversa rispetto ai dati memorizzati nella cache in altre circostanze, ad esempio le operazioni di prelettura. Pertanto, il valore EqualPriority indica che nella cache non sono contenuti dati su base preferenziale. Quando ReadRetentionPriority è impostato su EqualPriority, tutti i tipi di dati hanno uguale accesso alla memoria della cache. D'altra parte, un valore KeepPrefetchedData indica che è consigliabile assegnare una preferenza ai dati prelettura mentre il valore KeepReadData indica che è necessario assegnare una preferenza ai dati memorizzati nella cache da un'operazione READ. Per altre informazioni sui valori che è possibile assegnare a questo membro, vedere l'enumerazione DISK_CACHE_RETENTION_PRIORITY .

WriteRetentionPriority

Vedere la discussione in ReadRetentionPriority.

DisablePrefetchTransferLength

Disabilita il prelettura. La prelettura potrebbe essere disabilitata ogni volta che il numero di blocchi richiesti supera il valore in DisablePrefetchTransferLength. Se zero, la prelettura viene disabilitata indipendentemente dalle dimensioni della richiesta di blocco.

PrefetchScalar

Se TRUE, indica che ScalarPrefetch.Maximum deve essere usato insieme alla lunghezza del trasferimento per calcolare la quantità di dati che è possibile recuperare. Se FALSE, BlockPrefetch.Maximum sarà il numero massimo di blocchi di disco che possono essere prelettura.

DUMMYUNIONNAME

DUMMYUNIONNAME.ScalarPrefetch

DUMMYUNIONNAME.ScalarPrefetch.Minimum

Contiene il moltiplicatore scalare della lunghezza di trasferimento della richiesta quando PrefetchScalar è TRUE. Se PrefetchScalar è TRUE, il valore in ScalarPrefetch.Minimum viene moltiplicato per la lunghezza del trasferimento per ottenere la quantità minima di dati che è possibile recuperare nella cache in un'operazione su disco.

DUMMYUNIONNAME.ScalarPrefetch.Maximum

Contiene il moltiplicatore scalare della lunghezza di trasferimento della richiesta quando PrefetchScalar è TRUE. Se PrefetchScalar è TRUE, il valore in ScalarPrefetch.Maximum viene moltiplicato per la lunghezza del trasferimento per ottenere la quantità massima di dati che è possibile recuperare nella cache in un'operazione su disco.

DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks

Contiene le dimensioni massime, in blocchi, della lunghezza del trasferimento.

DUMMYUNIONNAME.BlockPrefetch

DUMMYUNIONNAME.BlockPrefetch.Minimum

Contiene il moltiplicatore scalare della lunghezza di trasferimento della richiesta quando PrefetchScalar è TRUE. Se PrefetchScalar è TRUE, il valore in ScalarPrefetch.Minimum viene moltiplicato per la lunghezza del trasferimento per ottenere la quantità minima di dati che è possibile recuperare nella cache in un'operazione su disco.

DUMMYUNIONNAME.BlockPrefetch.Maximum

Contiene il moltiplicatore scalare della lunghezza di trasferimento della richiesta quando PrefetchScalar è TRUE. Se PrefetchScalar è TRUE, il valore in ScalarPrefetch.Maximum viene moltiplicato per la lunghezza del trasferimento per ottenere la quantità massima di dati che è possibile recuperare nella cache in un'operazione su disco.

Requisiti

Requisito Valore
Intestazione ntdddisk.h (include Ntdddisk.h)

Vedi anche

DISK_CACHE_INFORMATION

IOCTL_DISK_GET_CACHE_INFORMATION