파일 시스템 필터 드라이버가 디바이스 드라이버와 다른 방법
Microsoft Windows 운영 체제의 파일 시스템 필터 드라이버 및 디바이스 드라이버는 다음과 같은 방법으로 다릅니다.
전원 관리 없음
파일 시스템 필터 드라이버는 디바이스 드라이버가 아니므로 하드웨어 디바이스를 직접 제어하지 않으므로 IRP_MJ_POWER 요청을 받지 않습니다. 대신 전원 IRP는 스토리지 디바이스 스택으로 직접 전송됩니다. 그러나 드문 경우지만 파일 시스템 필터 드라이버가 전원 관리를 방해할 수 있습니다. 이러한 이유로 파일 시스템 필터 드라이버는 DriverEntry 루틴에서 IRP_MJ_POWER 대한 디스패치 루틴을 등록해서는 안 되며 PoXxx 루틴을 호출해서는 안 됩니다.
WDM 없음
파일 시스템 필터 드라이버는 WDM(Windows 드라이버 모델) 드라이버일 수 없습니다. Microsoft Windows 드라이버 모델은 디바이스 드라이버 전용입니다.
AddDevice 또는 StartIo 없음
파일 시스템 필터 드라이버는 디바이스 드라이버가 아니므로 하드웨어 디바이스를 직접 제어하지 않으므로 AddDevice 또는 StartIo 루틴이 없어야 합니다.
만든 다른 디바이스 개체
파일 시스템 필터 드라이버와 디바이스 드라이버는 모두 디바이스 개체를 만들지만, 만드는 디바이스 개체의 수와 종류는 다릅니다.
디바이스 드라이버는 디바이스를 나타내는 물리적 및 기능적 디바이스 개체를 만듭니다. PnP(플러그 앤 플레이) 관리자는 디바이스 드라이버에서 만든 모든 디바이스 개체를 포함하는 전역 디바이스 트리를 빌드하고 유지 관리합니다. 파일 시스템 필터 드라이버가 만드는 디바이스 개체는 이 디바이스 트리에 포함되지 않습니다.
파일 시스템 필터 드라이버는 물리적 또는 기능적 디바이스 개체를 만들지 않습니다. 대신 제어 디바이스 개체를 만들고 디바이스 개체를 필터링합니다. 제어 디바이스 개체는 시스템 및 사용자 모드 애플리케이션에 대한 필터 드라이버를 나타냅니다. 필터 디바이스 개체는 특정 파일 시스템 또는 볼륨을 필터링하는 실제 작업을 수행합니다. 파일 시스템 필터 드라이버는 일반적으로 하나의 컨트롤 디바이스 개체와 하나 이상의 필터 디바이스 개체를 만듭니다.
기타 차이점
파일 시스템 필터 드라이버는 디바이스 드라이버가 아니므로 DMA(직접 메모리 액세스)를 수행하지 않습니다.
대상 디바이스의 함수 드라이버 위 또는 아래에 연결할 수 있는 디바이스 필터 드라이버와 달리 파일 시스템 필터 드라이버는 대상 파일 시스템 드라이버 위에만 연결할 수 있습니다. 따라서 디바이스 드라이버 용어에서 파일 시스템 필터 드라이버는 상위 필터일 수 있으며 더 낮은 필터는 될 수 없습니다.