볼륨에 연결된 디바이스 개체 필터링

볼륨을 필터링하기 위해 필터 드라이버는 필터 디바이스 개체를 만들고 볼륨의 볼륨 디바이스 개체 위에 연결합니다.

볼륨으로 전송되는 I/O 요청 유형

볼륨 위에 연결된 필터 디바이스 개체는 일반적으로 다음과 같은 유형의 I/O 요청을 받을 것으로 예상할 수 있습니다.

IRP_MJ_CLEANUP

IRP_MJ_CLOSE

IRP_MJ_CREATE

IRP_MJ_DEVICE_CONTROL

IRP_MJ_DIRECTORY_CONTROL

IRP_MJ_FILE_SYSTEM_CONTROL

IRP_MJ_FLUSH_BUFFERS

IRP_MJ_INTERNAL_DEVICE_CONTROL

IRP_MJ_LOCK_CONTROL

IRP_MJ_PNP

IRP_MJ_QUERY_EA

IRP_MJ_QUERY_INFORMATION

IRP_MJ_QUERY_QUOTA

IRP_MJ_QUERY_SECURITY

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_READ

IRP_MJ_SET_EA

IRP_MJ_SET_INFORMATION

IRP_MJ_SET_QUOTA

IRP_MJ_SET_SECURITY

IRP_MJ_SET_VOLUME_INFORMATION

IRP_MJ_SHUTDOWN

IRP_MJ_WRITE

FastIoCheckIfPossible

FastIoDetachDevice

FastIoDeviceControl

FastIoLock

FastIoQueryBasicInfo

FastIoQueryNetworkOpenInfo

FastIoQueryOpen

FastIoQueryStandardInfo

FastIoRead

FastIoReadCompressed

FastIoUnlockAll

FastIoUnlockAllByKey

FastIoUnlockSingle

FastIoWrite

FastIoWriteCompressed

MdlRead

MdlReadComplete

MdlReadCompleteCompressed

MdlWriteComplete

MdlWriteCompleteCompressed

PrepareMdlWrite

볼륨에 연결된 파일 시스템 필터 디바이스 개체는 기본적으로 인식할 수 없거나 원치 않는 모든 IRP를 드라이버 스택의 다음 하위 드라이버에 전달해야 합니다. 또한 FastIoDetachDevice를 구현해야 합니다.

참고 Microsoft Windows XP 이상에서는 다음과 같은 빠른 I/O 콜백 루틴이 사용되지 않으며 파일 시스템 필터 드라이버에서 사용하지 않아야 합니다. AcquireForCcFlush

AcquireFileForNtCreateSection

AcquireForModWrite

ReleaseForCcFlush

ReleaseFileForNtCreateSection

ReleaseForModWrite

자세한 내용은 FsRtlRegisterFileSystemFilterCallbacks에 대한 참조 항목을 참조하세요.