структура 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 .

Значение Значение
EqualPriority
0
Данные не хранятся в кэше на предпочтительной основе.
KeepPrefetchedData
1
Предпочтение следует указать для предварительной выборки данных.
KeepReadData
2
Предпочтение отдается данным, кэшируемым из операции чтения.

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)

См. также раздел

IOCTL_DISK_GET_CACHE_INFORMATION

IOCTL_DISK_SET_CACHE_INFORMATION