структура DISK_CACHE_INFORMATION (ntdddisk.h)
Структура DISK_CACHE_INFORMATION используется с запросом IOCTL_DISK_GET_CACHE_INFORMATION для получения сведений о кэше.
Синтаксис
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;
Члены
ParametersSavable
Указывает, если задано значение 1, устройство может сохранять любые параметры в энергонезависимом хранилище.
ReadCacheEnabled
Указывает , если задано значение 1, что кэш чтения включен.
WriteCacheEnabled
Указывает , если задано значение 1, что кэш записи включен.
ReadRetentionPriority
Определяет вероятность того, что различные типы данных останутся в кэше. С помощью этого значения, например, данные, кэшированные из операций ЧТЕНИЯ или ЗАПИСИ, могут иметь другой приоритет, чем данные, кэшированные при других обстоятельствах, таких как операции предварительной выборки. Таким образом, значение EqualPriority указывает, что данные не хранятся в кэше на предпочтительной основе. Если параметр ReadRetentionPriority имеет значение EqualPriority, все типы данных имеют равный доступ к кэш-памяти. С другой стороны, значение KeepPrefetchedData указывает, что предпочтение должно быть отдано предварительно полученным данным, а значение KeepReadData указывает, что предпочтение должно быть предоставлено данным, кэшируемым из операции READ. Дополнительные сведения о значениях, которые могут быть назначены этому члену, см. в перечислении DISK_CACHE_RETENTION_PRIORITY .
WriteRetentionPriority
См. обсуждение в разделе ReadRetentionPriority.
DisablePrefetchTransferLength
Отключает предварительную выборку. Предварительная выборка может быть отключена всякий раз, когда количество запрошенных блоков превышает значение в DisablePrefetchTransferLength. При нулевом значении предварительная выборка отключается независимо от размера запроса блока.
PrefetchScalar
При значении TRUE указывает, что scalarPrefetch.Maximum следует использовать вместе с длиной передачи, чтобы вычислить объем данных, которые можно предварительно получить. При значении FALSEзначение BlockPrefetch.Maximum будет являться максимальным числом блоков диска, которые можно предварительно получить.
DUMMYUNIONNAME
DUMMYUNIONNAME.ScalarPrefetch
DUMMYUNIONNAME.ScalarPrefetch.Minimum
Содержит скалярный множитель длины передачи запроса, если PrefetchScalar имеет значение TRUE. Если параметр PrefetchScalar имеет значение TRUE, значение в ScalarPrefetch.Minimum умножается на длину передачи, чтобы получить минимальный объем данных, которые можно предварительно получить в кэш на диске.
DUMMYUNIONNAME.ScalarPrefetch.Maximum
Содержит скалярный множитель длины передачи запроса, если PrefetchScalar имеет значение TRUE. Если параметр PrefetchScalar имеет значение TRUE, значение в ScalarPrefetch.Maximum умножается на длину передачи, чтобы получить максимальный объем данных, которые можно предварительно получить в кэш на диске.
DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks
Содержит максимальный размер (в блоках) длины передачи.
DUMMYUNIONNAME.BlockPrefetch
DUMMYUNIONNAME.BlockPrefetch.Minimum
Содержит скалярный множитель длины передачи запроса, если PrefetchScalar имеет значение TRUE. Если параметр PrefetchScalar имеет значение TRUE, значение в ScalarPrefetch.Minimum умножается на длину передачи, чтобы получить минимальный объем данных, которые можно предварительно получить в кэш на диске.
DUMMYUNIONNAME.BlockPrefetch.Maximum
Содержит скалярный множитель длины передачи запроса, если PrefetchScalar имеет значение TRUE. Если параметр PrefetchScalar имеет значение TRUE, значение в ScalarPrefetch.Maximum умножается на длину передачи, чтобы получить максимальный объем данных, которые можно предварительно получить в кэш на диске.
Требования
Требование | Значение |
---|---|
Заголовок | ntdddisk.h (включая Ntdddisk.h) |