proc_register() 이 함수가 현재 리눅스 버전에서는 어떻게 ???
글쓴이: sanae / 작성시간: 수, 2004/01/14 - 8:43오후
버전 2.2.20 에서 아래 함수가 있는 것을 확인했습니다.
proc_register()
proc_register_dynamic()
그런데 현재 버전에서는 위 함수들이 없더라고요..
레드햇 9 (2.4.20-8) 에도 없고 2.6.0 에도 없어요..
커널 모듈 프로그래밍을 공부하고 있는데, 이 함수가 소스에 없어서
unresolved symbol proc_register
unresolved symbol proc_unregister
이와 같은 에러가 나네요...
이 함수들이 현재 리눅스 버전에서 어떤 함수들로 바뀌었나요??
아님 2.2.20을 컴파일해서 공부를 해야 .....윽..
저 함수들을 대체하는 함수들을 알려주세요.....
Forums:
proc_register 함수는 커널버전 2.4 인가를 경계로 stati
proc_register 함수는 커널버전 2.4 인가를 경계로 static 함수로 바뀌었습니다. 이후 버전에서는 그대신 create_proc_read_entry 등의 함수를 써야겠지요.
자세한것은 위키 문서를 참조하시거나, 2.4 소스 트리안에서 있는 다른 디바이스 드라이버를 보시면 쉽게 아실수 있습니다.
http://doc.kldp.org/wiki.php/ProcfsGuide
윗 분 얘기에 추가로...
아래와 같이 두가지 Function으로 Read용 Proc을 생성하고 삭제합니다.
create_proc_read_entry : Proc 생성
remove_proc_entry : Proc 삭제
예)
create_proc_read_entry("driver/test",NULL,read_proc_test,NULL);
.
.
.
remove_proc_entry("driver/test",NULL);
여기서, "driver/test"가 Proc Path이고, read_proc_test가 Proc Handler입니다.
댓글 달기