달력

102017  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  

DriverEntry 루틴

Driver 2010.08.25 00:59

NTSTATUS

DriverEntry(

        IN PDRIVER_OBJECT DriverObject,  //로드된 드라이버 모듈의 구조체 포인터

        IN PUNICODE_STRING RegistryPath  //로드된 드라이버 모듈의 서비스 키 포인터

        )


  드라이버 모듈이 메모리에 로드되면 Windows OS는 로드된 모듈의 DriverEntry 루틴을 찾아 해당 드라이버 모듈의 초기화 과정을 수행한다. 모든 드라이버가 메모리에 로드되는 것은 아니며 시스템 레지스트리에 적당(?)하게 설치되어 있는 드라이버만 메모리에 로드가 가능하다. 이 적당한 곳을 서비스 키라고 하며(위치는 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DriverName) 이곳에 등록된 드라이버는만(Win32 API의 서비스 함수를 사용하여 메모리에 로드할 수도 있다.) 메모리에 로드 할 수 있다. 드라이버가 메모리에 로드되는 시기에 자신이 등록된 키 아래의 하위 키를 접근하도록 허용하기 위해 운영체제는 Registrypath라는 포인터 변수를 이용하여, 위와 같은 키 값을알려준다.

 

 

신고

'Driver' 카테고리의 다른 글

DriverEntry 루틴  (1) 2010.08.25
Posted by 얀지스카드
TAG

티스토리 툴바