Bagikan melalui


struktur VDS_HINTS2 (vds.h)

[Dimulai dengan Windows 8 dan Windows Server 2012, antarmuka COM Layanan Disk Virtual digantikan oleh API Manajemen Penyimpanan Windows.]

Berisi petunjuk automagic untuk LUN di kumpulan penyimpanan.

Sintaks

typedef struct _VDS_HINTS2 {
  ULONGLONG            ullHintMask;
  ULONGLONG            ullExpectedMaximumSize;
  ULONG                ulOptimalReadSize;
  ULONG                ulOptimalReadAlignment;
  ULONG                ulOptimalWriteSize;
  ULONG                ulOptimalWriteAlignment;
  ULONG                ulMaximumDriveCount;
  ULONG                ulStripeSize;
  ULONG                ulReserved1;
  ULONG                ulReserved2;
  ULONG                ulReserved3;
  BOOL                 bFastCrashRecoveryRequired;
  BOOL                 bMostlyReads;
  BOOL                 bOptimizeForSequentialReads;
  BOOL                 bOptimizeForSequentialWrites;
  BOOL                 bRemapEnabled;
  BOOL                 bReadBackVerifyEnabled;
  BOOL                 bWriteThroughCachingEnabled;
  BOOL                 bHardwareChecksumEnabled;
  BOOL                 bIsYankable;
  BOOL                 bAllocateHotSpare;
  BOOL                 bUseMirroredCache;
  BOOL                 bReadCachingEnabled;
  BOOL                 bWriteCachingEnabled;
  BOOL                 bMediaScanEnabled;
  BOOL                 bConsistencyCheckEnabled;
  VDS_STORAGE_BUS_TYPE BusType;
  BOOL                 bReserved1;
  BOOL                 bReserved2;
  BOOL                 bReserved3;
  SHORT                sRebuildPriority;
} VDS_HINTS2, *PVDS_HINTS2;

Anggota

ullHintMask

Masker petunjuk LUN. Masing-masing anggota BOOL struktur ini memiliki bendera petunjuk yang sesuai yang dapat diatur dalam masker. Jika bendera petunjuk diatur, petunjuk yang sesuai akan dipertimbangkan. Jika bendera petunjuk tidak diatur, petunjuk akan diabaikan. Bendera petunjuk dijelaskan dalam tabel berikut.

Nilai Makna
VDS_HINT_FASTCRASHRECOVERYREQUIRED
0x00000000000000001L
Penyedia membatasi waktu yang diperlukan untuk pemulihan. Untuk mendukung pemulihan cepat, penyedia menggunakan log perubahan yang memungkinkan penyedia memulihkan LUN tanpa membandingkan seluruh konten LUN.
VDS_HINT_MOSTLYREADS
0x00000000000000002L
Penyedia mengoptimalkan LUN untuk pola penggunaan baca-sebagian besar, biasanya dengan menggunakan pencerminan daripada striping paritas.
VDS_HINT_OPTIMIZEFORSEQUENTIALREADS
0x0000000000000004L
Penyedia mengoptimalkan LUN untuk pola penggunaan baca berurutan. Jika bendera ini tidak diatur dan VDS_HINT_OPTIMIZEFORSEQUENTIALWRITES juga tidak diatur, LUN dioptimalkan untuk I/O acak.
VDS_HINT_OPTIMIZEFORSEQUENTIALWRITES
0x00000000000000008L
Penyedia mengoptimalkan LUN untuk pola penggunaan tulis berurutan. Jika bendera ini tidak diatur dan VDS_HINT_OPTIMIZEFORSEQUENTIALREADS juga tidak diatur, LUN dioptimalkan untuk I/O acak.
VDS_HINT_READBACKVERIFYENABLED
0x0000000000000010L
Penyedia memverifikasi penulisan ke LUN dengan menggunakan readback.
VDS_HINT_REMAPENABLED
0x0000000000000020L
Pemetaan LUN sejauh mana ekstensi drive dibuat dan diperbarui secara otomatis oleh penyedia. Jika bendera ini tidak diatur, pemetaan tetap diperbaiki setelah konfigurasi, kecuali ketika tindakan proaktif diambil untuk menghindari kegagalan drive.
VDS_HINT_WRITETHROUGHCACHINGENABLED
0x0000000000000040L
Penyedia mengaktifkan kebijakan penembolokan write-through pada LUN.
VDS_HINT_HARDWARECHECKSUMENABLED
0x0000000000000080L
Penyedia mengaktifkan checksum perangkat keras pada LUN.
VDS_HINT_ISYANKABLE
0x0000000000000100L
Penyedia mengonfigurasi LUN sehingga drive yang berkontribusi padanya dapat dihapus secara fisik dengan gangguan sistem minimal. Hal ini biasanya dicapai dengan memastikan bahwa LUN menempati drive sesekali.
VDS_HINT_ALLOCATEHOTSPARE
0x0000000000000200L
Penyedia mengalokasikan cadangan panas untuk LUN. Untuk informasi selengkapnya, lihat Hot Sparing, VDS_DRIVE_FLAG, dan VDS_DISK_FLAG.
VDS_HINT_BUSTYPE
0x0000000000000400L
Penyedia menggunakan jenis bus yang ditentukan pada LUN. Untuk informasi selengkapnya, lihat VDS_STORAGE_BUS_TYPE.
VDS_HINT_USEMIRROREDCACHE
0x0000000000000800L
Penyedia menggunakan cache cermin pada LUN. Lihat nilai VDS_SF_SUPPORTS_MIRRORED_CACHE enumerasi VDS_SUB_SYSTEM_FLAG .
VDS_HINT_READCACHINGENABLED
0x0000000000001000L
Penyedia memungkinkan penembolokan baca pada LUN. Lihat nilai VDS_LF_READ_CACHE_ENABLEDenumerasi VDS_LUN_FLAG dan nilai VDS_SF_READ_CACHING_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG .
VDS_HINT_WRITECACHINGENABLED
0x0000000000002000L
Penyedia memungkinkan penembolokan tulis pada LUN. Lihat nilai VDS_LF_WRITE_CACHE_ENABLED enumerasi VDS_LUN_FLAG dan nilai VDS_SF_WRITE_CACHING_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG .
VDS_HINT_MEDIASCANENABLED
0x0000000000004000L
Penyedia memungkinkan pemindaian media pada LUN. Lihat nilai VDS_LF_MEDIA_SCAN_ENABLED enumerasi VDS_LUN_FLAG dan nilai VDS_SF_MEDIA_SCAN_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG .
VDS_HINT_CONSISTENCYCHECKENABLED
0x0000000000008000L
Penyedia memungkinkan pemeriksaan konsistensi pada LUN. Lihat nilai VDS_LF_CONSISTENCY_CHECK_ENABLED enumerasi VDS_LUN_FLAG dan nilai VDS_SF_CONSISTENCY_CHECK_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG .

ullExpectedMaximumSize

Ukuran maksimum di mana LUN diperkirakan akan tumbuh, dalam byte. Nilai dapat sama dengan, lebih besar dari, atau kurang dari nilai yang ditentukan dalam parameter ullSizeInBytes ketika metode IVdsHwProviderStoragePools::CreateLunInStoragePool dipanggil. Beberapa penyedia menggunakan nilai ini untuk mencadangkan ruang untuk LUN. Penyedia yang tidak dapat mencadangkan ruang biasanya mengabaikan parameter ini.

ulOptimalReadSize

Ukuran baca optimal untuk LUN, dalam byte. Nol menunjukkan tidak ada ukuran baca yang optimal.

ulOptimalReadAlignment

Penyelarasan baca optimal sehubungan dengan blok logis pertama LUN. Nol menunjukkan tidak ada perataan baca yang optimal.

ulOptimalWriteSize

Ukuran tulis optimal untuk LUN, dalam byte. Nol menunjukkan tidak ada ukuran tulis yang optimal.

ulOptimalWriteAlignment

Keselarasan tulis optimal sehubungan dengan blok logis pertama LUN. Nol menunjukkan tidak ada perataan tulis yang optimal.

ulMaximumDriveCount

Jumlah maksimum drive untuk berkontribusi pada LUN. Nol menunjukkan tidak ada jumlah drive maksimum. Nilai ini dapat digunakan untuk membatasi jumlah interleave stripe dalam set stripe.

ulStripeSize

Ukuran interleave garis cermin atau paritas, dalam byte. Nol membuat ukuran garis tidak ditentukan.

ulReserved1

Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.

ulReserved2

Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.

ulReserved3

Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.

bFastCrashRecoveryRequired

Jika anggota ini TRUE, waktu pemulihan terbatas. Atur bendera VDS_HINT_FASTCRASHRECOVERYREQUIRED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bMostlyReads

Untuk mengoptimalkan pola penggunaan yang sebagian besar dibaca (misalnya, melalui pencerminan daripada striping paritas), atur anggota ini ke TRUE. Jika tidak, atur ke FALSE. Atur bendera VDS_HINT_MOSTLYREADS di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bOptimizeForSequentialReads

Untuk mengoptimalkan pola penggunaan baca berurutan, atur anggota ini ke TRUE. Jika tidak, atur ke FALSE. Mengatur anggota bOptimizeForSequentialReads dan bOptimizeForSequentialWrites keduanya ke FALSE mengoptimalkan untuk I/O acak. Atur bendera VDS_HINT_OPTIMIZEFORSEQUENTIALREADS di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bOptimizeForSequentialWrites

Untuk mengoptimalkan pola penggunaan tulis berurutan, atur anggota ini ke TRUE. Jika tidak, atur ke FALSE. Mengatur anggota bOptimizeForSequentialReads dan bOptimizeForSequentialWrites keduanya ke FALSE mengoptimalkan untuk I/O acak. Atur bendera VDS_HINT_OPTIMIZEFORSEQUENTIALWRITES di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bRemapEnabled

Jika anggota ini TRUE, penyedia memetakan kembali jangkauan LUN untuk mendorong jangkauan secara otomatis. Jika FALSE, pemetaan LUN sejauh mana ekstensi drive tetap diperbaiki setelah konfigurasi LUN kecuali sejauh mana secara eksplisit dipetakan ulang untuk menghindari blok yang rusak. Atur bendera VDS_HINT_REMAPENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bReadBackVerifyEnabled

Jika anggota ini TRUE, penyedia memverifikasi penulisan ke LUN dengan readback. Jika FALSE, penyedia tidak memverifikasi penulisan. Atur bendera VDS_HINT_READBACKVERIFYENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bWriteThroughCachingEnabled

Jika anggota ini TRUE, penyedia mengaktifkan penembolokan write-through pada LUN; jika FALSE, penyedia tidak mengaktifkan penembolokan write-through. Atur bendera VDS_HINT_WRITETHROUGHCACHINGENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bHardwareChecksumEnabled

Jika anggota ini TRUE, penyedia mengaktifkan checksum pada LUN. Atur bendera VDS_HINT_HARDWARECHECKSUMENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bIsYankable

Jika anggota ini TRUE, drive yang berkontribusi pada LUN dapat dihapus secara fisik tanpa gangguan yang signifikan pada sistem (ini biasanya benar ketika LUN terdiri dari hanya beberapa drive). Jika FALSE, LUN tidak dapat dihapus tanpa gangguan signifikan pada sistem. Atur bendera VDS_HINT_ISYANKABLE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bAllocateHotSpare

TRUE jika klien ingin mengalokasikan hot spare drive untuk LUN ini, atau FALSE sebaliknya. Atur bendera VDS_HINT_ALLOCATEHOTSPARE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bUseMirroredCache

TRUE jika klien ingin LUN ini menggunakan cache cermin, atau FALSE sebaliknya. Atur bendera VDS_HINT_USEMIRROREDCACHE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bReadCachingEnabled

TRUE jika klien ingin LUN menggunakan penembolokan baca, atau FALSE sebaliknya. Atur bendera VDS_HINT_READCACHINGENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bWriteCachingEnabled

TRUE jika klien ingin LUN menggunakan penembolokan tulis, atau FALSE sebaliknya. Atur bendera VDS_HINT_WRITECACHINGENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bMediaScanEnabled

TRUE jika klien ingin mengaktifkan pemindaian media untuk LUN ini, atau FALSE jika tidak. Atur bendera VDS_HINT_MEDIASCANENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bConsistencyCheckEnabled

TRUE jika klien ingin mengaktifkan pemeriksaan konsistensi untuk LUN ini, atau FALSE jika tidak. Atur bendera VDS_HINT_CONSISTENCYCHECKENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

BusType

Nilai enumerasi VDS_STORAGE_BUS_TYPE yang menentukan jenis bus untuk LUN. Atur bendera VDS_HINT_BUSTYPE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.

bReserved1

Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.

bReserved2

Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.

bReserved3

Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.

sRebuildPriority

Prioritas pembangunan kembali untuk LUN. Nilai dapat berkisar dari 0 (prioritas terendah) hingga 15 (prioritas tertinggi).

Keterangan

Metode IVdsHwProviderStoragePools::CreateLunInStoragePool melewati struktur ini sebagai parameter untuk memberikan petunjuk untuk membuat LUN di kumpulan penyimpanan. Ini diteruskan sebagai parameter dalam metode IVdsLun2::ApplyHints2 untuk menerapkan serangkaian petunjuk baru ke LUN. Selanjutnya, dikembalikan oleh metode IVdsLun2::QueryHints2 untuk melaporkan petunjuk yang saat ini diterapkan ke pleks LUN atau LUN.

Petunjuk bukan arahan untuk pelaksana. Meskipun pelaksana secara umum diharapkan untuk melakukan yang terbaik untuk mempertimbangkan petunjuk, mereka tidak berkewajiban untuk mengikutinya. Pelaksana dapat memilih alternatif ketika tidak dapat mengikuti petunjuk tertentu karena alasan teknis atau ketika mengikutinya dapat mengakibatkan konfigurasi yang buruk.

Persyaratan

   
Klien minimum yang didukung Windows 7 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 R2 [hanya aplikasi desktop]
Header vds.h

Lihat juga

IVdsLun2::ApplyHints2

IVdsLun2::QueryHints2