영어로 읽기

다음을 통해 공유


디바이스 개체의 플래그 확인

이동식 미디어에 대한 I/O 작업을 요청하는 각 IRP에 대해 이동식 미디어 디바이스 드라이버는 DO_VERIFY_VOLUME DeviceObject-Flags>에 이미 설정되어 있는지 여부를 결정해야 합니다. 이 값을 설정하면 드라이버는 다음을 수행해야 합니다.

  • IRP_MJ_READ, IRP_MJ_WRITEIRP_MJ_DEVICE_CONTROL 요청의 경우 드라이버 IO_STACK_LOCATION 구조의 Flags 멤버에 SL_OVERRIDE_VERIFY_VOLUME 설정되어 있는지 확인합니다. 이 경우 요청된 작업을 계속합니다.

    IFS가 이동식 미디어 볼륨을 탑재하거나 다시 탑재할 때 기본 미디어의 논리적 구조에 대한 정보를 반환하는 디바이스 제어 요청은 I/O 스택 위치의 Flags 멤버에서 SL_OVERRIDE_VERIFY_VOLUME 설정됩니다.

  • 그렇지 않으면 드라이버는 DeviceObject-Flags>에서 DO_VERIFY_VOLUME 설정되는 동안 해당 드라이브, 디바이스 또는 파티션에 대한 I/O 요청 수행을 거부해야 합니다. 이동식 미디어 드라이버는 FSD가 DO_VERIFY_VOLUME을 지울 때까지 이동식 미디어 드라이버의 DeviceObject-Flags>에서 해당 디바이스로 전송되는 입출력 요청 패킷(IRP)에 실패해야 합니다.

이전 전송 요청에 대해 DO_VERIFY_VOLUME 설정되고 SL_OVERRIDE_VERIFY_VOLUME 설정되지 않은 경우 이동식 미디어 디바이스 드라이버가 IRP에 실패하지 않는 경우 파일 시스템은 캐시된 파일 데이터의 무결성을 유지 관리하거나 열려 있는 파일이 있는 미디어를 다시 탑재하라는 메시지가 사용자에게 다시 탑재되도록 할 수 없습니다.