структура DISK_CACHE_INFORMATION (winioctl.h)
Предоставляет сведения о кэше диска. Эта структура используется кодами элементов управления IOCTL_DISK_GET_CACHE_INFORMATION и IOCTL_DISK_SET_CACHE_INFORMATION .
Синтаксис
typedef struct _DISK_CACHE_INFORMATION {
BOOLEAN ParametersSavable;
BOOLEAN ReadCacheEnabled;
BOOLEAN WriteCacheEnabled;
DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority;
DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority;
WORD DisablePrefetchTransferLength;
BOOLEAN PrefetchScalar;
union {
struct {
WORD Minimum;
WORD Maximum;
WORD MaximumBlocks;
} ScalarPrefetch;
struct {
WORD Minimum;
WORD Maximum;
} BlockPrefetch;
} DUMMYUNIONNAME;
} DISK_CACHE_INFORMATION, *PDISK_CACHE_INFORMATION;
Члены
ParametersSavable
Указывает, может ли устройство сохранять какие-либо параметры в энергонезависимом хранилище.
ReadCacheEnabled
Указывает, включен ли кэш чтения.
WriteCacheEnabled
Указывает, включен ли кэш записи.
ReadRetentionPriority
Определяет вероятность того, что данные, кэшированные из операции чтения, останутся в кэше. Этим данным может быть присвоен другой приоритет, чем кэшируемым данным при других обстоятельствах, например при выполнении операции предварительной выборки.
Этот член может быть одним из следующих значений из типа перечисления DISK_CACHE_RETENTION_PRIORITY .
WriteRetentionPriority
Определяет вероятность того, что данные, кэшированные в результате операции записи, останутся в кэше. Этим данным может быть присвоен другой приоритет, чем кэшируемым данным при других обстоятельствах, например при выполнении операции предварительной выборки.
DisablePrefetchTransferLength
Отключает предварительную выборку. Предварительная выборка может быть отключена всякий раз, когда количество запрошенных блоков превышает значение в DisablePrefetchTransferLength. При нулевом значении предварительная выборка отключается независимо от размера запроса блока.
PrefetchScalar
Если этот элемент имеет значение TRUE, объединение является структурой ScalarPrefetch . В противном случае объединение является структурой BlockPrefetch .
DUMMYUNIONNAME
DUMMYUNIONNAME.ScalarPrefetch
DUMMYUNIONNAME.ScalarPrefetch.Minimum
Скалярный множитель длины передачи запроса. Этот элемент действителен, только если prefetchScalar имеет значение TRUE. Если параметр PrefetchScalar имеет значение TRUE, это значение умножается на длину передачи, чтобы получить минимальный объем данных, которые можно предварительно получить в кэш на диске.
DUMMYUNIONNAME.ScalarPrefetch.Maximum
Скалярный множитель длины передачи запроса. Этот элемент действителен, только если prefetchScalar имеет значение TRUE. Если параметр PrefetchScalar имеет значение TRUE, это значение умножается на длину передачи, чтобы получить максимальный объем данных, которые можно предварительно получить в кэш на диске.
DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks
Максимальное количество блоков, которые можно предварительно получить.
DUMMYUNIONNAME.BlockPrefetch
DUMMYUNIONNAME.BlockPrefetch.Minimum
Минимальный объем данных, которые можно предварительно получить в кэш на диске в виде абсолютного числа блоков диска. Этот элемент действителен, только если PrefetchScalar имеет значение FALSE.
DUMMYUNIONNAME.BlockPrefetch.Maximum
Максимальный объем данных, которые можно предварительно получить в кэш на диске в виде абсолютного числа блоков диска. Этот элемент действителен, только если PrefetchScalar имеет значение FALSE.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | winioctl.h (включая Windows.h) |