'Driver 종류'에 해당되는 글 1건

  1. 2008.08.08 [요약] Windows2000 드라이버의 종류
2008. 8. 8. 20:09 과거 저장소/Device Driver
728x90
앞으로 짬짬이 시간을 내어서 Art Baker와 Jerry Lozano의 저서 The Windows 2000 Device Driver Book의 내용을 보면서 중요한 부분들은 메모하려고 합니다.
물론 위 원서를 읽으면 좋겠지만, 저는 그 번역서인 원리와 예제로 배우는 Windows 2000 디바이스 드라이버를 읽어 보고 있는 중입니다. ^0^

Windows2000 드라이버의 종류는 무엇이 있는지 살펴보겠습니다.

- Windows2000은 가장 상위에 사용자 모드커널 모드 두 가지 타입의 드라이버를 제공합니다.


1. 사용자 모드 드라이버는 사용자 모드에서 동작하는 시스템 레벨의 코드입니다.
  - 사용자 모드 드라이버에는 가상의 하드웨어 or 새로운 환경 서브시스템을 위한 가상 드라이버들이 있습니다.
  - Windows2000에서는 사용자 모드의 코드는 직접적으로 H/W에 접근 할 수 없으므로 필수적으로 커널 모드
    드라이버 코드에 의해야 합니다.

2. 커널 모드 드라이버는 커널 모드에서 동작하는 시스템 레벨의 코드입니다.
  - 커널 모드에서는 H/W에 접근하는 것이 허용되므로, 직접적으로 H/W를 제어할 수 있습니다.

이제 우리가 배우려고 하는 부분은 H/W를 다루기 위한 커널 모드 드라이버 부분이니 이 부분에 대해서 더 깊숙히 들어가 보겠습니다.

- 커널 모드 드라이버에는 레가시(Legacy)드라이버WDM드라이버의 이 두가지 타입으로 구분되어집니다.


1. 레거시(Legacy)드라이버는 위 책에 첫 번째 판에 잘 나와있다고 합니다.
  - 하지만 궁금하여 찾아보니 "미친감자"님이 쓰신 내용이 있어서 짧막하게나마 설명 하려 합니다.
    Legacy Driver란?
      - Legacy Driver란 NT4.0 계졀 규격에 맞는 드라이버를 지칭한다고 합니다.
      - WDM Driver와 구분하기 위해서 Legacy Driver라고 말한다고 합니다.
      - Legacy란 영어 단어의 의미에서 부터 유산이란 의미기기에 Windows2000입장에서는 NT4.0의 드라이버
        형태는 유산과 같다고 생각할 수 있기에 그런 단어를 붙인거 같다고 합니다.

2. WDM 드라이버는 플러그 앤 플레이를 지원하고, 전원관리, 자동 설정(autoconfiguration) 그리고 핫 플러그인기능을 제공합니다.
  - WDM 드라이버가 제대로 작성되었다면 Windows2000과 Windows98에 동시에 사용될 수 있습니다.
  - 하지만 두 운영체제 사이에 호환성은 보장하지 않습니다.

- 레거시 드라이버와 WDM 드라이버는 또 다른 레벨의 형태로 상위레벨, 인터미디엇, 하위레벨로 분류 할 수 있다.


1. 상위 레벨 드라이버에는 파일 시스템 드라이버(FSD)가 해당된다.
  - 파일 시스템 드라이버는 상위 레벨에서 내려온 요청을 특정 디바이스의 요청에 맞게 변환하는 역할을 수행합니다.

2. 인터미디엇(Intermediate)드라이버는 디스크 미러 드라이버, 클래스 드라이버, 미니드라이버 그리고 필터 드라이버들이 해당됩니다.
  - 이러한 드라이버들은 상위 레벨의 드라이버와 하위 계층 드라이버 사이에 위치하여 변환하는 역할을 수행합니다.

3. 하위 레벨 드라이버들은 H/W BUS를 위한 컨트롤러 드라이버들이 해당됩니다.
  - 예로, SCSI 호스트 버스 어댑터(SCSI Host Bust Adapter)는 하위 레벨 드라이버중 하나입니다.
  - 이런 드라이버들은 Windows2000의 HAL계층과 상호 동작하기도 하고, H/W와 직접 통신하기도 합니다.

위 내용들을 한눈에 확인 할 수 있게 도표를 참고 하시기 바랍니다.
사용자 삽입 이미지

Windows2000 드라이버 분류 계층도

728x90
posted by acedon