2009-09-24 6 views
1

리눅스 커널 모듈을 작업한지 꽤 오래되었지만 다른 file_operations에서 사용할 수있는 open() 열린 구현에 컨텍스트를 숨겨 놓을 곳이 있다는 것을 기억하는 것 같습니다. 예를 들어 if inode 구조 나 모든 file_operations 함수에 전달되는 파일 구조가 void *로 채워질 수있는 경우 장치 노드를 여는 모든 사람과 관련된 상태를 유지하려고합니다. 모든 사용자를 매우 쉽게 지원할 수 있습니다. ... 이것이 가능한가?Linux 사용자 드라이버에서 사용자 컨텍스트를 어디에 저장합니까?

답변

2

답을 찾았습니다. 모든 file_operations 함수에 전달되는 "struct file *"에는 "private_data"라는 필드가 있습니다. void *이므로, open(), write() 및 ioctl() 및 open 해제()에서 무료로 ..

관련 문제