파일명으로 inode값을 찾고싶습니다.
글쓴이: voodoochild / 작성시간: 수, 2007/05/16 - 12:43오전
linux 프로그래밍 초보입니다.
제목 그대로 파일명을 통해(또는 open call로 얻은 fd로) inode값을 찾아 data block들에 대해 직접적으로 만져보고 싶은데요,
sys_open을 뒤져보니 fget(fd)로 struct file을 얻고, 그것으로 inode도 얻는것같은데..
당췌 헤더파일들에선 fget()을 못찾겠더군요,커널소스에 file_table.c에서 선언되있는것은 확인했는데..
아무리 해도 에러만나더군요.(커널 코드를 수정해서 쓰고싶은게 아니라, 그냥 쓰고싶은(?) 상황입니다)
질문의 요점은 다음과 같은 두가지입니다.
1. 파일명으로 해당 파일의 inode를 얻는 법
2. inode를 얻었다면 data block들을 어떻게 직접적으로 만질 수 있는지(논리적주소이던, 물리적주소이던)
한 파일에 속한 data block들이 linked list구조라면, 한 data block(아마 4096byte겠죠)의 구조는 어떻게 참조 가능한지
알려주시면 감사하겠습니다
Forums:
stat(2), read(2)을
stat(2), read(2)을 보시고..
linux/Documentation/filesystems/vfs.txt
를 보기 바랍니다.
--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://cinsk.github.io/cfaqs/
댓글 달기