Bagikan melalui


struktur MULTI_SECTOR_HEADER

[Struktur ini hanya berlaku untuk volume NTFS versi 3; struktur ini dapat diubah dalam versi mendatang.]

Mewakili header multisektor.

Sintaks

typedef struct _MULTI_SECTOR_HEADER {
  UCHAR  Signature[4];
  USHORT UpdateSequenceArrayOffset;
  USHORT UpdateSequenceArraySize;
} MULTI_SECTOR_HEADER, *PMULTI_SECTOR_HEADER;

Anggota

Tanda tangan

Tanda tangan. Nilai ini adalah kenyamanan bagi pengguna.

UpdateSequenceArrayOffset

Offset ke array urutan pembaruan, dari awal struktur ini. Array urutan pembaruan harus berakhir sebelum nilai USHORT terakhir di sektor pertama.

UpdateSequenceArraySize

Ukuran array urutan pembaruan, dalam byte.

Keterangan

Perhatikan bahwa tidak ada file header terkait untuk struktur ini.

Definisi struktur ini hanya berlaku untuk versi utama 3 dan minor versi 0 atau 1, seperti yang dilaporkan oleh FSCTL_GET_NTFS_VOLUME_DATA.

Array urutan header dan pembaruan multisektor memberikan deteksi transfer multisektor yang tidak lengkap untuk perangkat yang memiliki ukuran sektor fisik yang lebih besar dari atau sama dengan langkah nomor urutan (512) atau yang tidak mentransfer sektor secara tidak berurutan. Jika ada perangkat yang memiliki ukuran sektor yang lebih kecil dari langkah nomor urut dan terkadang mentransfer sektor secara tidak berurutan, maka array urutan pembaruan tidak akan memberikan deteksi absolut transfer yang tidak lengkap. Langkah nomor urut diatur ke angka yang cukup kecil untuk memberikan perlindungan absolut untuk semua hard disk yang diketahui. Ini tidak diatur lebih kecil atau mungkin ada durasi atau overhead ruang yang berlebihan.

Array urutan pembaruan terdiri dari array nilai nUSHORT , di mana n adalah ukuran struktur yang dilindungi dibagi dengan langkah nomor urutan. Kata pertama berisi nomor urutan pembaruan, yang merupakan penghitung siklus berapa kali struktur yang berisi telah ditulis ke disk. Selanjutnya adalah nilai USHORT yang disimpan n yang ditimpa oleh nomor urutan pembaruan terakhir kali struktur yang berisi ditulis ke disk.

Setiap kali struktur yang dilindungi akan ditulis ke disk, kata terakhir di setiap langkah nomor urutan disimpan ke posisi masing-masing dalam array angka urutan, kemudian ditimpa dengan nomor urutan pembaruan berikutnya. Setelah penulisan, atau setiap kali struktur dibaca, kata yang disimpan dari array nomor urutan dipulihkan ke posisi aktualnya dalam struktur. Sebelum memulihkan kata yang disimpan pada bacaan, semua nomor urutan di akhir setiap langkah dibandingkan dengan nomor urutan aktual di awal array. Jika salah satu perbandingan ini tidak sama, maka transfer multisektor yang gagal telah terdeteksi.

Ukuran array ditentukan oleh ukuran struktur yang berisi. Array urutan pembaruan harus disertakan di akhir header struktur yang dilindunginya karena ukuran variabelnya. Pengguna harus memastikan bahwa ruang yang benar disediakan untuk struktur yang mengandung: (ukuran struktur / 512 + 1) * sizeof (USHORT).

Lihat juga

Tabel File Master