DISK_CACHE_INFORMATION 结构 (winioctl.h)

提供有关磁盘缓存的信息。此结构由 IOCTL_DISK_GET_CACHE_INFORMATIONIOCTL_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

请求传输长度的标量乘数。 仅当 PrefetchScalarTRUE 时,此成员才有效。 当 PrefetchScalarTRUE 时,此值乘以传输长度,以获取可在磁盘操作上预提取到缓存中的最小数据量。

DUMMYUNIONNAME.ScalarPrefetch.Maximum

请求传输长度的标量乘数。 仅当 PrefetchScalarTRUE 时,此成员才有效。 当 PrefetchScalarTRUE 时,此值乘以传输长度,以获取可预提取到磁盘操作上的缓存中的最大数据量。

DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks

可预提取的最大块数。

DUMMYUNIONNAME.BlockPrefetch

DUMMYUNIONNAME.BlockPrefetch.Minimum

可以预提取到磁盘操作上的缓存的最小数据量,作为磁盘块的绝对数量。 仅当 PrefetchScalarFALSE 时,此成员才有效。

DUMMYUNIONNAME.BlockPrefetch.Maximum

可以预提取到磁盘操作上的缓存的最大数据量,作为磁盘块的绝对数量。 仅当 PrefetchScalarFALSE 时,此成员才有效。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winioctl.h (包括 Windows.h)

另请参阅

IOCTL_DISK_GET_CACHE_INFORMATION

IOCTL_DISK_SET_CACHE_INFORMATION