struktur HYBRID_INFORMATION (ntddscsi.h)

Struktur HYBRID_INFORMATION berisi informasi kemampuan disk hibrid. Struktur dikembalikan ketika fungsi HYBRID_FUNCTION_GET_INFO dipilih dalam permintaan IOCTL_SCSI_MINIPORT_HYBRID dikirim ke driver miniport HBA.

Sintaks

typedef struct _HYBRID_INFORMATION {
  ULONG          Version;
  ULONG          Size;
  BOOLEAN        HybridSupported;
  NVCACHE_STATUS Status;
  NVCACHE_TYPE   CacheTypeEffective;
  NVCACHE_TYPE   CacheTypeDefault;
  ULONG          FractionBase;
  ULONGLONG      CacheSize;
  struct {
    ULONG WriteCacheChangeable : 1;
    ULONG WriteThroughIoSupported : 1;
    ULONG FlushCacheSupported : 1;
    ULONG Removable : 1;
    ULONG ReservedBits : 28;
  } Attributes;
  struct {
    UCHAR                             PriorityLevelCount;
    BOOLEAN                           MaxPriorityBehavior;
    UCHAR                             OptimalWriteGranularity;
    UCHAR                             Reserved;
    ULONG                             DirtyThresholdLow;
    ULONG                             DirtyThresholdHigh;
    struct {
      ULONG CacheDisable : 1;
      ULONG SetDirtyThreshold : 1;
      ULONG PriorityDemoteBySize : 1;
      ULONG PriorityChangeByLbaRange : 1;
      ULONG Evict : 1;
      ULONG ReservedBits : 27;
      ULONG MaxEvictCommands;
      ULONG MaxLbaRangeCountForEvict;
      ULONG MaxLbaRangeCountForChangeLba;
    } SupportedCommands;
    NVCACHE_PRIORITY_LEVEL_DESCRIPTOR Priority[0];
  } Priorities;
} HYBRID_INFORMATION, *PHYBRID_INFORMATION;

Anggota

Version

Versi struktur ini. Atur ke HYBRID_REQUEST_INFO_STRUCTURE_VERSION.

Size

Ukuran struktur ini. Atur ke sizeof(HYBRID_INFORMATION).

HybridSupported

Dukungan Miniport untuk disk hibrid. Atur ke TRUE jika disk hibrid didukung. Jika tidak, FALSE.

Status

Status cache disk hibrid. Ini berisi salah satu nilai berikut.

Nilai Makna
NvCacheStatusUnknown
Driver miniport tidak dapat melaporkan status cache.
NvCacheStatusDisabling
Cache saat ini berubah menjadi status NvCacheStatusDisabled .
NvCacheStatusDisabled
Cache pada disk hibrid dinonaktifkan.
NvCacheStatusEnabled
Cache pada disk hibrid diaktifkan.

CacheTypeEffective

Jenis penembolokan non-volatil yang saat ini diatur untuk disk hibrid. Jenis cache yang efektif adalah salah satu nilai berikut.

Nilai Makna
NvCacheTypeUnknown
Driver miniport tidak dapat melaporkan jenis cache
NvCacheNone
Disk tidak mendukung cache yang tidak volatil.
NvCacheTypeWriteBack
Penembolokan tulis balik didukung oleh disk hibrid.
NvCacheTypeWriteThrough
Penembolokan write-through didukung oleh disk hibrid.

CacheTypeDefault

Jenis penembolokan default yang digunakan oleh disk hibrid. Nilai yang mungkin sama dengan untuk CacheTypeEffective.

FractionBase

Nilai dasar untuk bidang pecahan dalam struktur ini. Nilai ini diatur ke 255.

CacheSize

Ukurannya, dalam LBA, dari non-volatil pada disk hibrid.

Attributes

Atribut disk hibrid.

Attributes.WriteCacheChangeable

Dukungan untuk perubahan dalam kebijakan penembolokan tulis. Nilainya adalah 1 perubahan kebijakan yang diizinkan. Jika tidak, perubahan diabaikan.

Attributes.WriteThroughIoSupported

Dukungan untuk operasi penulisan individu saat penembolokan write-through digunakan. Nilainya adalah 1 jika penulisan individual didukung. Jika tidak, nilainya adalah 0.

Attributes.FlushCacheSupported

Dukungan untuk flush cache non-volatil. Nilainya adalah 1 jika flush didukung. Jika tidak, nilainya adalah 0.

Attributes.Removable

Dukungan penghapusan cache non-volatil dari disk. Nilainya adalah 1 jika cache dapat dilepas. Jika tidak, nilainya adalah 0.

Attributes.ReservedBits

Dicadangkan.

Priorities

Pengaturan prioritas untuk disk hibrid.

Priorities.PriorityLevelCount

Jumlah tingkat prioritas yang didukung oleh cache. Saat ini, nilai bukan nol menunjukkan dukungan untuk semua prioritas.

Priorities.MaxPriorityBehavior

Jika TRUE, I/O disk dapat gagal pada prioritas maksimum jika cache penuh. Jika tidak, jika FALSE, operasi akan selesai ke disk.

Priorities.OptimalWriteGranularity

Priorities.Reserved

Priorities.DirtyThresholdLow

Ambang rendah untuk cache flush. Nilai ini adalah rasio dalam rentang FractionBase.

Priorities.DirtyThresholdHigh

Ambang rendah untuk cache flush. Nilai ini adalah rasio dalam rentang FractionBase.

Priorities.SupportedCommands

Dukungan untuk perintah khusus cache non-volatil ke disk hibrid.

Priorities.SupportedCommands.CacheDisable

Dukungan untuk perubahan dalam kebijakan penembolokan tulis. Nilainya adalah 1 perubahan kebijakan yang diizinkan. Jika tidak, perubahan diabaikan.

Priorities.SupportedCommands.SetDirtyThreshold

Dukungan untuk operasi penulisan individu saat penembolokan write-through digunakan. Nilainya adalah 1 jika penulisan individual didukung. Jika tidak, nilainya adalah 0.

Priorities.SupportedCommands.PriorityDemoteBySize

Dukungan untuk flush cache non-volatil. Nilainya adalah 1 jika flush didukung. Jika tidak, nilainya adalah 0.

Priorities.SupportedCommands.PriorityChangeByLbaRange

Dukungan untuk perubahan prioritas rentang LBA. Nilainya adalah 1 jika perubahan prioritas didukung. Jika tidak, nilainya adalah 0.

Priorities.SupportedCommands.Evict

Dukungan penghapusan cache non-volatil dari disk. Nilainya adalah 1 jika cache dapat dilepas. Jika tidak, nilainya adalah 0.

Priorities.SupportedCommands.ReservedBits

Dicadangkan.

Priorities.SupportedCommands.MaxEvictCommands

Perintah Pengeluaran bersamaan maksimum yang diizinkan yang luar biasa. Nilai ini valid ketika Evict diatur ke 1.

Priorities.SupportedCommands.MaxLbaRangeCountForEvict

Jumlah maksimum rentang LBA yang mungkin untuk dikaitkan dengan perintah Evict. Nilai ini valid ketika Evict diatur ke 1.

Priorities.SupportedCommands.MaxLbaRangeCountForChangeLba

Jumlah maksimum rentang LBA yang mungkin untuk dikaitkan dengan perintah Perubahan Prioritas. Nilai ini valid ketika PriorityChangeByLbaRange diatur ke 1.

Priorities.Priority[0]

Array deskriptor tingkat prioritas. Jumlah deskriptor yang ada dalam array diatur dalam PriorityLevelCount.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.1.
Header ntddscsi.h (termasuk Ntddscsi.h)

Lihat juga

IOCTL_SCSI_MINIPORT_HYBRID