상세 컨텐츠

본문 제목

Device Driver Build

청강컴정/시스템프로그래밍

by luckey 2009. 3. 12. 19:44

본문


Device Driver 를 제작한 후에 Build를 진행하기 위해서는 작성된 소스파일외에 MAKEFILE, SOURCES 의 두가지 파일이 추가로 필요하다. 이 파일들은 확장자는 없으나 Device Driver를 제작하기 위한 중요한 정보를 포함하고 있다.

MAKEFILE
- DDK가 설치된 Root의 bin 디렉토리의 makefile.def 파일의 내용을 포함한다.
- 파일을 메모장이나 편집기로 열어보면 다음과 같은 내용을 볼 수 있다.
   !INCLUDE $(NTMAKEENV)\makefile.def
   언뜻보면 정말 심플해 보일지 모르지만 실제 makefile.def 의 파일안을 들여다 보면 4,000줄이 넘는 코드를 볼 수 있다.
   Driver를 Build하기위해 필요한 정보들이라고 한다. 매번 Build를 할때마다 그것을 작성하는 수고를 덜어준다.

SOURCES : Driver 가 Build 될 때의 환경을 설정해 줘야 한다.
- TARGETNAME=SIMPLE  : 드라이버의 실제 이름을 정해준다.(여기서 정해준 이름에 따라 .sys 파일이 만들어진다.)
- TARGETTYPE=DRIVER
- TARGETPATH=.             : .sys 파일이 만들어질 위치를 정해준다.
                                       (. 을 입력했으므로 현재 폴더에서 i386 폴더를 만들고 그안에 .sys 파일이 만들어진다.)
- SOURCES=SIMPLE.C    : 빌드할 C 또는 C++ 등의 소스가 있는 파일을 적어준다.

소스파일과 관련 필요한 파일들을 모두 만들었으면 DDK의 Win XP Checked Build Environment를 실행한다.

드라이버 소스가 있는 디렉터리 위치로 이동하고 Build 명령을 입력하면 여러 폴더와 함께 i386이란 폴더가 만들어지고 그안에 .sys 파일이 생성된 것을 확인할 수 있다.


명령어
- Build      : 이전 Build 된 내용에서 수정된 내용만 추가하여 Build 작업을 수행한다.
- Build -c  : 이전 Build 된 내용과 상관없이 무조건 새로 Build 작업을수행한다.

되도록이면 Build -c 를 사용한다.

샘플파일을 올려놨으니 실제로 해보도록 하자.
1. 파일 다운로드 후 적당한 위치에 압축해제
2. 개발소스파일, MAKEFILE, SOURCES 파일이 있는위치 확인 및 파일이 있는지 확인
3. DDK 의 Win XP Checked Build Environment 실행(윈도우 버전에 따라 다를 수 있음)
4. 2에서 확인된 파일이 있는 폴더로 이동 (이동명령은 CD c:\ 와 깉이 사용하면 된다.)
5. build(또는 build -c) 입력 빌드 확인
6. 해당 폴더 확인 2에서 확인한 폴더 > i386폴더 > .sys 파일이 있는지 확인한다. 

관련글 더보기

댓글 영역