관리 메뉴

kisoo

WDK 에서 Filesystem Minifilter 소스 설명 본문

01.About Programming /2.Kernel Lab

WDK 에서 Filesystem Minifilter 소스 설명

JamesK78 2012. 2. 14. 14:16
Filesystem miniFilter를 처음 개발할 때 
nullFilter, passthrough, scanner 등을 먼저보시면
도움이 될 것 같습니다. 그리고 나머지 샘플에 대해
간략한 설명을 달아놓았으니 필요한 부분만 발췌하여
분석하시면 시간절약에 도움이 되실듯합니다.


\WINDDK\6000\src\filesys\miniFilter\cancelsafe
miniFilter에서는 I/O 취소처리를 어떻게 처리하는지를 보여줍니다.

\WINDDK\6000\src\filesys\miniFilter\cdo
miniFilter에서 App과 DeviceIoControl통신을 하기 위해 어떻게 구현되는지 보여줍니다.

\WINDDK\6000\src\filesys\miniFilter\ctx
miniFilter에서는 여러종류의 컨텍스트 기능을 제공합니다. 가령 파일이 최초
오픈되서 종료될때까지 이 파일에 대하여 컨텍스트를 유지할수도있고
볼륨이 생성되어서 종료될때까지 컨텍스트를 유지할수도 있습니다.
이밖에도 몇가지 유형의 컨텍스트를 제공하는데 이샘플에서 해당사용법을
확인할 수 있습니다.

\WINDDK\6000\src\filesys\miniFilter\MetadataManager
NTFS파일시스템의 경우 파일에 메타데이터를 사용할 수 있습니다.
이 메타데이터를 어떻게 활용하는지 얻어오는지를 알 수 있는 샘플인듯(?)합니다.
저도 이부분은 정확히 보지 않아서 추측이네요~^^.. 분석해보신 다른분들께서
댓글남겨주시면 고맙겠습니다.

\WINDDK\6000\src\filesys\miniFilter\minispy
Filemon과 같이 파일들의 접근내역을 감시할 수 있는 드라이버입니다.

\WINDDK\6000\src\filesys\miniFilter\nullFilter
miniFilter의 기본골격을 알 수 있는 샘플입니다. miniFilter를 처음 공부한다면
이 샘플을 먼저 보시길 권장해드립니다.

\WINDDK\6000\src\filesys\miniFilter\passThrough
nullFilter에 조금 진화하여 현재 I/O의 File경로까지 구하는 소스입니다.
nullFIlter와 더불어 miniFilter를 처음공부할때 도움이 됩니다.

\WINDDK\6000\src\filesys\miniFilter\scanner
특정 파일을 감시하여 해당 파일에 어떤 내용이 쓰여지는지를 감시하는 소스입니다.
즉 어떤 내용들이 WriteFile되는지를 감시하여 이 내용을 App에게 전달합니다.
이 예제를 통하여 드라이버와 App이 데이터를 어떻게 주고받는지도 알수 있습니다.
(miniFilter에서는 드라이버와 App이 손쉽게 데이터를 주고 받을 수 있는 매커니즘을
제공합니다.)

NDDK\6000\src\filesys\miniFilter\swapBuffers
miniFilter에서 데이터 변조를 어떤식으로 할 수 있는지 여부를 확인 할 수 있습니다.
실시간암복호화등의 데이터 변조 드라이버가 필요하다면 이 샘플을 확인하시면됩니다.
Comments