(1) 디바이스 파일과 디바이스 드라이버 함수 연결
: 커널이 디바이스 파일에 기록된 디바이스 타입과 주번호를 이용해 커널 내에 등록된 디바이스 드라이버 함수를 연결한다.

- 응용 프로그램에서 open()함수로 디바이스 파일을 열어 타입 정보와 주 번호를 얻는다.

- 이 정보를 이용하여 chrdevs 배열에 등록된 디바이스 드라이버의 인덱스를 얻는다.

- 얻은 인덱스 값으로 chrdevs 변수에 등록된 file_operation 구조체 주소를 얻는다.
: file_operation 구조체에는 문자 디바이스 드라이버가 문자 디바이스 드라이버를 등록하는 함수를 사용하여 저수준 파일 입출력에 대응하는 함수를 설정한 내용을 담고 있다.

- 디바이스 파일 타입 정보와 주 번호를 이용해 커널 내의 디바이스 드라이버를 찾는다.


※ 출처 : http://callgm.tistory.com/26

'L inux > Device Driver' 카테고리의 다른 글

리눅스 커널 모듈  (0) 2011.09.28
디바이스 파일 생성  (0) 2011.09.28
블록 디바이스 / 네트워크 디바이스  (0) 2011.09.28
문자 디바이스  (0) 2011.09.28
디바이스 드라이버의 이해  (2) 2011.09.28
by 민트앤라떼 2011. 9. 28. 16:26