사용자 공간 구성 파일 시스템

사용자 공간 구성 파일 시스템

현재 configfs 파일 시스템에서 파일을 생성/읽기/쓰기하는 응용 프로그램이 있습니다. 내 configfs 핸들러는 장치와 통신하는 다른 커널 모듈에 정의된 함수를 호출합니다. 각 configfs 파일은 커널의 객체에 해당하며 해당 파일/객체에 대한 읽기/쓰기는 장치 작업에 매핑됩니다.

최근에는 사용자 공간 장치로 이동했습니다. 이제 장치와 직접 통신할 수 있는 사용자 공간 라이브러리가 생겼습니다. 따라서 이 애플리케이션을 사용자 공간 라이브러리 API를 사용하도록 마이그레이션하고 싶습니다. 애플리케이션은 이전과 동일한 파일을 생성하지만 예를 들어 사용자 공간 파일 시스템에서 생성하며 이러한 작업에 대한 핸들러는 이제 사용자 공간 라이브러리 API가 됩니다. 기본적으로 사용자 공간 라이브러리가 드라이버를 대체합니다.

지금까지 FUSE에 대해 살펴보았습니다. 내가 보는 문제는 핸들러가 읽기/쓰기/mkdir 등과 같은 일반적인 작업만 수행하도록 허용한다는 것입니다. 나는 configfs가 제공하는 것처럼 더 세밀한 제어를 원합니다. 예를 들어, 저는명명 된디렉토리, 디렉토리를 읽고 쓸 때 일어나는 일명명 된서류 등

이러한 파일 시스템이나 다른 방법에 대한 도움을 주시면 감사하겠습니다.

편집: @muru가 의견에서 언급했듯이 사용자 공간 처리기 자체에서 파일 이름을 보는 것을 피하고 싶습니다. 이는 현재 configfs 핸들러가 수행하는 작업의 일부가 추가 파일을 생성하기 때문입니다. 따라서 이렇게 하면 사용자 공간 핸들러가 파일을 생성하고 해당 생성 자체에 다른 핸들러가 있는 루프 상황이 발생합니다. 어쩌면 가능할 수도 있지만 나에게는 추악한 것 같습니다.

관련 정보