enumerasi BPIO_OPERATIONS (ntddstor.h)

BPIO_OPERATIONS mendefinisikan berbagai operasi BypassIO yang didukung oleh kode kontrol IOCTL_STORAGE_MANAGE_BYPASS_IO .

Sintaks

typedef enum _BPIO_OPERATIONS {
  BPIO_OP_ENABLE,
  BPIO_OP_DISABLE,
  BPIO_OP_QUERY
} BPIO_OPERATIONS;

Konstanta

 
BPIO_OP_ENABLE
Permintaan agar BypassIO diaktifkan untuk volume atau disk (perangkat) yang diberikan, yang berarti bahwa driver mungkin tidak melihat semua baca/tulis untuk tumpukan tersebut.

CATATAN

Semua driver dalam volume dan tumpukan penyimpanan memiliki kesempatan untuk mem-veto permintaan pengaktifan BypassIO, tetapi dianjurkan untuk tetap mengaktifkannya sebanyak mungkin.

Pada pra-operasi:

* Jika driver dapat mendukung BypassIO untuk perangkat tertentu, itu harus meneruskan permintaan ke bawah tumpukan.
* Jika driver tidak dapat mendukung BypassIO untuk perangkat yang diberikan, itu harus:
* Perbarui struktur BPIO_OUTPUT , termasuk operasi NTSTATUS yang menjelaskan mengapa permintaan pengaktifan di-veto, nama driver, dan string deskriptif yang unik dengan detail tambahan tentang mengapa permintaan aktif di-veto.
* Lengkapi IOCTL_STORAGE_MANAGE_BYPASS_IO dengan STATUS_SUCCESS.

Selama pasca-operasi, driver dapat melihat apakah semua driver di bawahnya mampu mendukung BypassIO. Jika ya, driver harus mempertahankan status yang diperlukan untuk file dan melanjutkan pemrosesan penyelesaian. Adalah tanggung jawab driver untuk mempertahankan status untuk menangani permintaan dengan benar yang mungkin tidak kompatibel dengan status yang mendukung BypassIO.

Sistem file mempertahankan jumlah per volume dari berapa banyak file yang saat ini mengaktifkan BypassIO. Operasi BPIO_OP_ENABLE dikirim hanya ketika jumlah ini beralih dari nol ke satu.

Bahkan jika driver volume atau tumpukan penyimpanan melakukan veto BypassIO, tumpukan sistem file dapat terus melakukan BypassIO. Ini karena jika seseorang telah mem-veto BypassIO pada tumpukan volume, sistem file masih dapat melewati filter.

BPIO_OP_DISABLE
Meminta Agar BypassIO dinonaktifkan untuk volume/disk yang diberikan. Ini memungkinkan driver untuk membersihkan status BypassIO terkait.

Sistem file mengirimkan operasi ini ketika file terakhir yang diaktifkan BypassIO dinonaktifkan atau ditutup (jumlah per volumenya beralih dari satu ke nol).

Jika driver menerima BPIO_OP_DISABLE tetapi saat ini tidak mengaktifkan BypassIO, driver harus mengabaikan permintaan.

Operasi ini seharusnya tidak gagal.
BPIO_OP_QUERY
Mengkueri apakah BypassIO dapat diaktifkan untuk volume atau disk yang diberikan.

Driver penyimpanan harus memproses permintaan ini mirip dengan operasi BPIO_OP_ENABLE , mengisi informasi diagnostik yang sama di bidang yang sesuai dalam struktur BPIO_OUTPUT . Perbedaan utamanya adalah bahwa driver tidak memasuki status BypassIO ENABLE selama KUERI.

Keterangan

Lihat BypassIO untuk driver penyimpanan untuk informasi selengkapnya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 11
Header ntddstor.h

Lihat juga

IOCTL_STORAGE_MANAGE_BYPASS_IO