본문 바로가기
개발/Windows

드라이버란 무엇일까?

by lucidmaj7 2019. 12. 27.
728x90
반응형

드라이버

드라이버는 ...

아주 오래?전 컴퓨터에 새로운 장치를 구입하여 사용하려면 무언가가 필요했었다. 구입한 새로운 장치의 박스에는 설명서, 보증서가 동봉 되어있고, 플로피 디스크나 CD롬이 들어 있었다. 플로피디스크나 CD를 컴퓨터에 넣어 무언가를 설치해야 장치를 사용할 수 있었다. 이것이 바로 장치 드라이버라는 프로그램이다. 장치 드라이버는 특정 장치를 컴퓨터에서 사용 가능하도록 만들어 준다.
드라이버(Driver)라는 말을 들었을 때 처음 떠오르는 것은 프로그램이 아니다. 나사 따위를 를 돌리는 그런 스크류 드라이버가 먼저 떠오른다. 정확히 우리나라말로 번역되지도 않는 컴퓨터 용어이다. 여기서 부터 우리를 혼란스럽게 한다. 책을 읽고 MDSN따위를 찾아가며 개념을 익히지만 가슴에 와 닿지 않는 그런 단어다. 그러나 다행히 북쪽 친구들이 우리말로 번역을 하여 사용하고 있는데 그 친구들은 "장치구동기", "장치구동프로그람" 이라 쓰고 있었다. 그들의 해석은 아마 무릎을 탁! 치게 만드는 해석이다.

드라이버는 장치를 구동할 수 있게 해주는 프로그램이다.

전자상가에서 프린터 한대를 사와 컴퓨터에 꼽았다. 컴퓨터는 갑작스럽게 USB포트에 꼽혀진 장치를 발견하고 말을 걸어 본다. 하지만 이 자식은 컴퓨터가 알아 들을 수 없는 말로 대답을 하여 도통 뭐하는 놈인지 알 수 가 없었다. 때로는 대답도 하지 않는다. 무슨 놈인지 알 수 없기에 컴퓨터는 이 장치로 할 수 있는게 없다. (물론 최신Windows에는 자동으로 드라이버를 설치 하기에 이런일이 거의 없다.)
컴퓨터는 드라이버 CD를 넣어 드라이버를 설치하자 프린터와 대화를 할 수 있게 되었다. 글자를 인쇄하고 절전모드로 전환할 수도 있고 잉크의 양이 얼마나 남았는지 확인도 가능하게 되었고 무엇보다 이놈이 프린터라는 사실도 알 수 있게 되었다.
드라이버는 장치와 컴퓨터가 서로 대화를 할 수 있도록 해주는 프로그램이다.

어떤 놈이 연결 될지 모른다.

OS는 Apple이나 Microsoft, Linux 등 자기만의 특별한 규칙과 호환되는 기능들로 구성되어 있다. 그 규칙만 따르면 다른 컴퓨터에서 만들어진 프로그램을 실행하는데 문제가 없다. 하지만 H/W는 다르다. 각기 다른 방식으로 구동되며, 기능도 다르고, 같은 USB 프린터라도 각자 고유한 방식으로 구동된다. OS는 누가 만든 어떤 장치가 연결될지 모르며 어떻게 구동시킬지 알 수 가 없다. 때문에 H/W제조사는 구입할때 드라이버 CD를 넣어주는 것이다. 이걸 깔아 봐라!

장치 드라이버 개발자

장치 드라이버는 당연 SW개발자가 개발한다. 다만 컴퓨터, 즉 OS와 장치간의 대화가 가능하도록 만들어야 하기 때문에 OS도 아주 잘알아야 하며, 연동하려는 H/W도 잘 알아야 한다. 때문에 어렵고 힘들고 많이 알아야 한다. 심지어 OS의 가장 밑바닥에서 동작하는 프로그램을 만들어야 하기 때문에 순간의 실수는...........시스템을 무너뜨린다. 커널패닉, BSOD! 그러므로 조심해야한다.

728x90
반응형

댓글