Welcome to TechNet Blogs Sign in | Join | Help

Escape From The Troubles

한국 마이크로소프트 플랫폼팀 블로그
Windows PnP Device 검색 절차

Windows Plug and Play System은 시스템에 새로운 장치(소프트웨어적으로 구성 가능한 장치)가 추가되었을 때, 적절한 리소스를 할당하여 장치가 올바르게 동작할 수 있도록 합니다. 다음은 새로운 PnP 장치가 시스템에 추가되었을 때, Windows에서 장치를 인식하는 과정을 단계별로 설명합니다.

PnP Device Detection
1) Standard Bus 드라이버는 시스템이 부팅되는 동안 또는 부팅 이후 새로운 추가된 장치가 있는지 감지합니다.

2) Bus 드라이버가 새로운 장치를 검색하면 hardware identifier를 장치로부터 얻어와 PnP 메니저에게 전달합니다.

3) PnP 메니저는 hardware identifier를 가지고 시스템에 알맞은 장치 드라이버 설치 파일이 있는지 검색합니다.

4) 적절한 장치 드라이버 설치 파일이 검색되면 해당 설치 파일을 이용하여 장치 드라이버를 설치합니다. 적절한 장치 드라이버 설치 파일을 검색하지 못한 경우 사용자에게 장치 드라이버를 요구하는 Pop up 메시지를 전달합니다.

5) 장치 드라이버가 설치되고, 메모리에 로드되면, PnP 메니저는 드라이버의 DriverEntry() 함수가 실행되게 됩니다.

6) 이후 PnP 메니저는 드라이버의 AddDevice() 함수를 실행하여 드라이버의 디바이스 오브젝트를 생성합니다.

7) PnP 메니저는 Bus 드라이버나 드라이버 설치 파일을 통하여 해당 장치가 필요로 하는 하드웨어 리소스 정보를 얻어옵니다.

8) 이미 설치되어 실행 중인 다른 장치의 하드웨어 리소스와 충돌이 나지 않도록 적절히 조율을 합니다. 현재 비어있는 하드웨어 리소스가 충분하지 않을 경우, 다른 하드웨어 리소스를 중지 후, 하드웨어 리소스를 적절히 재배치할 수 있다면, 다른 하드웨어에 일지 중지 및 리소스 재배치를 요청할 수 있습니다. 만일, 이 과정이 실패한다면, 새로운 추가된 장치 드라이버는 시스템이 재부팅되어야 정상적으로 동작할 수 있다는 메시지를 사용자에게 보낼 수 있습니다.

9) PnP 메니저가 적절한 하드웨어 리소스를 확보하면, StartDevice PnP 메시지를 통하여 장치 드라이버에게 리소스 정보를 알려줍니다.

10) 이제 새로 설치된 장치 드라이버는 자신에게 할당 받은 리소스를 확인하고, 디바이스를 구동할 수 있게 됩니다.

Posted: Friday, June 19, 2009 7:42 AM by escapetrouble
Filed under:

Comments

No Comments

Anonymous comments are disabled
Page view tracker