Bagikan melalui


Memeriksa Penanda di Objek Perangkat

Untuk setiap IRP yang meminta operasi I/O ke/dari media yang dapat dilepas, driver perangkat media yang dapat dilepas harus menentukan apakah DO_VERIFY_VOLUME sudah diatur dalam DeviceObject->Flags. Jika nilai ini diatur, driver harus melakukan hal berikut:

  • Untuk permintaan IRP_MJ_READ, IRP_MJ_WRITE, dan IRP_MJ_DEVICE_CONTROL, periksa apakah SL_OVERRIDE_VERIFY_VOLUME diatur dalam anggota Flags dari struktur IO_STACK_LOCATION driver. Jika ya, lanjutkan operasi yang diminta.

    Permintaan kontrol perangkat keras yang mengembalikan informasi tentang struktur logis dari media dasar memiliki SL_OVERRIDE_VERIFY_VOLUME diatur pada lokasi tumpukan I/O pada anggota bendera saat IFS memasang atau memasang kembali volume media yang dapat dilepas.

  • Jika tidak, driver harus menolak untuk melaksanakan permintaan I/O untuk drive, perangkat, atau partisi yang bersesuaian, sementara DO_VERIFY_VOLUME diatur pada Flags>dalam DeviceObject- . Driver media yang dapat dilepas harus menolak IRP yang dikirim ke perangkat yang sesuai sampai FSD menghapus DO_VERIFY_VOLUME di driver media yang dapat dilepas pada DeviceObject->Flag.

Jika driver perangkat media yang dapat dilepas tidak menolak IRPs ketika DO_VERIFY_VOLUME diatur dan SL_OVERRIDE_VERIFY_VOLUME tidak diatur untuk permintaan transfer sebelumnya, sistem file tidak dapat menjaga integritas data file yang di-cache maupun meminta pengguna untuk memasang kembali media yang menyimpan file terbuka.