USB Filter Driver - Packet Analyzer 4 탄
Posted 2008/08/04 11:08|
|
|
댓글 하나가 운영자에겐 커다란 힘이 됩니다!
< USB Filter Driver - Packet Analyzer 4 탄 >
이번 시간부터는 USB Filter Driver의 구조 및 처리 루틴 중심으로 함수 하나씩 하나씩 짚고 넘어 가겠습니다.
USB Filter Driver에서 구현해야 할 루틴에 대해서 간략하게 소개를 하면서 Packet Analyzer로 구현하기 위해서
주의해야 할 사항 및 꼭 알아야 할 사항에 대해서 설명을 하겠습니다.
1. DriverEntry()
1) DriverEntry()함수에 대해서는 따로 설명하지 않겠습니다. 너무 중요하고 일반적인 함수이기 때문
에 여러분도 잘 알고 있을 것입니다. 그럼 DriverEntry()함수에서 Packet Analyzer로 구현하기 위
해서는 "IRP_MJ_INTERNAL_DEVICE_CONTROL"라는 IRP에 대한 처리 루틴을 등록해 주어
야 합니다. 이 부분이 Packet Analyzer로 구현하기 위해서 시발점이 되는 부분입니다. 아주 중요한
부분이니 절대로 잊지 마세요.
![]()
"IRP_MJ_INTERNAL_DEVICE_CONTROL"라는 것은 USB 드라이버에서 하위 드라이버인
PDO에게 해당 요청의 IRP를 내려 보낼 때 그 IRP 생성을 위와 같은 URB의 형태로 PDO에게 내려
보냅니다. 그래서 우리가 Filtering하고자 하는 데이터를 보기 위해서는 해당 Major Function을 등
록해야 합니다.
2. PnP Handler
1) "IRP_MN_START_DEVICE" Minor Fuction Code 처리.
- 위와 같은 Minor Fuction code가 내려 오면, 우리는 Application에서 USB Fitler Driver와 별도의
통신을 하기 위해서는 통신용 Device Object를 생성해야 합니다.
- 별도의 통신용 Device Object 생성 및 처리 로직은 아래의 링크의 내용을 참고하시면 됩니다.
Filter Driver와 통신하기 : http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=27&MAEULNO=11&no=106&page=1
이번 시간에는 USB Filter Driver의 구조 및 처리 루틴을 설명하는 첫 번째 시간으로써 DriverEntry()함수와 PnP Handler에서
통신용 Device Object를 생성하는 방법에 대해서 알아 보았습니다.
출처 : http://blog.naver.com/gunner98
위의 정보가 도움이 되셨나요? 그렇다면 댓글 하나만 남겨주세요.
댓글 하나가 운영자에겐 커다란 힘이 됩니다!
- Filed under : 프로그래밍/Driver
- Tag : USB Filter Driver - Packet Analyzer 4 탄
- Comment Trackback

