Freigeben über


DISK_CACHE_INFORMATION Struktur (ntdddisk.h)

Die DISK_CACHE_INFORMATION Struktur wird mit der IOCTL_DISK_GET_CACHE_INFORMATION Anforderung zum Abrufen von Cacheinformationen verwendet.

Syntax

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;

Angehörige

ParametersSavable

Gibt an, dass das Gerät bei Festlegung auf 1 alle Parameter im nichtvolatile Speicher speichern kann.

ReadCacheEnabled

Gibt an, dass der Lesecache aktiviert ist, wenn er auf 1 festgelegt ist.

WriteCacheEnabled

Gibt an, dass der Schreibcache aktiviert ist, wenn er auf 1 festgelegt ist.

ReadRetentionPriority

Bestimmt die Wahrscheinlichkeit, dass verschiedene Datentypen im Cache verbleiben. Mithilfe dieses Werts können z. B. Daten, die aus einem READ- oder WRITE-Vorgang zwischengespeichert werden, eine andere Priorität erhalten als Daten, die unter anderen Umständen zwischengespeichert werden, z. B. Prefetch-Vorgänge. Daher gibt der Wert EqualPriority an, dass keine Daten im Cache bevorzugt im Cache gespeichert werden. Wenn ReadRetentionPriority- auf EqualPriority-festgelegt ist, haben alle Datentypen den gleichen Zugriff auf den Cachespeicher. Andererseits gibt ein Wert von KeepPrefetchedData- an, dass eine Einstellung für vorab gesendete Daten angegeben werden soll, während ein Wert von KeepReadData- angibt, dass eine Einstellung an Daten übergeben werden soll, die aus einem READ-Vorgang zwischengespeichert werden. Weitere Informationen zu den Werten, die diesem Element zugewiesen werden können, finden Sie in der DISK_CACHE_RETENTION_PRIORITY Enumeration.

WriteRetentionPriority

Siehe Diskussion unter ReadRetentionPriority.

DisablePrefetchTransferLength

Deaktiviert das Vorabrufen. Das Vorabfetching ist möglicherweise deaktiviert, wenn die anzahl der angeforderten Blöcke den Wert in DisablePrefetchTransferLengthüberschreitet. Bei Null ist das Vorabrufen unabhängig von der Größe der Blockanforderung deaktiviert.

PrefetchScalar

Wenn TRUE, gibt an, dass ScalarPrefetch.Maximum zusammen mit der Übertragungslänge verwendet werden soll, um die Datenmenge zu berechnen, die voreingestellt werden kann. Wenn FALSE-, BlockPrefetch.Maximum ist die maximale Anzahl von Datenträgerblöcken, die voreingestellt werden können.

DUMMYUNIONNAME

DUMMYUNIONNAME.ScalarPrefetch

DUMMYUNIONNAME.ScalarPrefetch.Minimum

Enthält den skalaren Multiplizierer der Übertragungslänge der Anforderung, wenn PrefetchScalar-TRUEist. Wenn PrefetchScalar-TRUEist, wird der Wert in ScalarPrefetch.Minimum mit der Übertragungslänge multipliziert, um die mindestmenge an Daten abzurufen, die in den Cache für einen Datenträgervorgang voreingestellt werden können.

DUMMYUNIONNAME.ScalarPrefetch.Maximum

Enthält den skalaren Multiplizierer der Übertragungslänge der Anforderung, wenn PrefetchScalar-TRUEist. Wenn PrefetchScalar-TRUEist, wird der Wert in ScalarPrefetch.Maximum mit der Übertragungslänge multipliziert, um die maximale Datenmenge abzurufen, die im Cache für einen Datenträgervorgang voreingestellt werden kann.

DUMMYUNIONNAME.ScalarPrefetch.MaximumBlocks

Enthält die maximale Größe in Blöcken der Übertragungslänge.

DUMMYUNIONNAME.BlockPrefetch

DUMMYUNIONNAME.BlockPrefetch.Minimum

Enthält den skalaren Multiplizierer der Übertragungslänge der Anforderung, wenn PrefetchScalar-TRUEist. Wenn PrefetchScalar-TRUEist, wird der Wert in ScalarPrefetch.Minimum mit der Übertragungslänge multipliziert, um die mindestmenge an Daten abzurufen, die in den Cache für einen Datenträgervorgang voreingestellt werden können.

DUMMYUNIONNAME.BlockPrefetch.Maximum

Enthält den skalaren Multiplizierer der Übertragungslänge der Anforderung, wenn PrefetchScalar-TRUEist. Wenn PrefetchScalar-TRUEist, wird der Wert in ScalarPrefetch.Maximum mit der Übertragungslänge multipliziert, um die maximale Datenmenge abzurufen, die im Cache für einen Datenträgervorgang voreingestellt werden kann.

Anforderungen

Anforderung Wert
Header- ntdddisk.h (include Ntdddisk.h)

Siehe auch

DISK_CACHE_INFORMATION

IOCTL_DISK_GET_CACHE_INFORMATION