IRP-Based 또는 빠른 I/O가 될 수 있는 작업
다음 유형의 작업은 IRP 기반 또는 빠른 I/O 작업일 수 있습니다.
IRP_MJ_DEVICE_CONTROL. (IRP_MJ_INTERNAL_DEVICE_CONTROL 항상 IRP 기반입니다.)
IRP_MJ_QUERY_INFORMATION. FileInformationClass 매개 변수가 FileBasicInformation, FileStandardInformation 또는 FileNetworkOpenInformation인 경우 이 작업은 빠른 I/O일 수 있습니다.
IRP_MJ_READ. 미니필터 드라이버는 빠른 I/O IRP_MJ_READ 작업 및 캐시된 IRP 기반 읽기를 받지 않도록 FLT_OPERATION_REGISTRATION 구조에서 FLTFL_OPERATION_REGISTRATION_SKIP_CACHED_IO 플래그를 설정할 수 있습니다.
IRP_MJ_WRITE. 미니필터 드라이버는 빠른 I/O IRP_MJ_WRITE 작업과 캐시된 IRP 기반 쓰기를 받지 않도록 FLT_OPERATION_REGISTRATION 구조에서 FLTFL_OPERATION_REGISTRATION_SKIP_CACHED_IO 플래그를 설정할 수 있습니다.
이러한 작업 중 하나라도 빠른 I/O 작업인 경우 해당 IRP 기반 작업이 다른 버퍼링 메서드를 사용하는 경우에도 항상 버퍼링 또는 직접 I/O를 사용하지 않습니다.
IRP_MJ_DEVICE_CONTROL 빠른 I/O 작업인 경우 IOCTL의 전송 유형에 관계없이 항상 버퍼링되거나 직접 I/O를 사용하지 않습니다.
IRP_MJ_LOCK_CONTROL IRP 기반 또는 빠른 I/O 작업일 수 있지만 버퍼가 없습니다.