inode와 fwrite와의 관계..
글쓴이: lucadi / 작성시간: 화, 2008/09/16 - 5:08오후
code 상에서 create 옵션을 사용해서 fopen()을 하고...
fopen()을 통해서 생성된 파일 포인터를 통해서 fwrite()를 할경우,
fwrite()할때마다, inode에 해당 파일의 변경된 사항을 저장하는 건가요?
아니면, fclose()를 했을 경우, 변경된 사항을 한꺼번에 inode에 저장하는 건가요?
아래, 예와 같은 경우에.. inode에 한번 fclose때 한번 접근하는지, 아니면, fwrite때마다 접근
하는지 궁금합니다..
ex)
FILE* fp = fopen();
for(; i < 3 ; ){
fwrite();
}
fclose();
지금 fwrite()를 분석하다보니깐, 현재 flush_write()정도 까지 찾아보고 있는데요..
fwrite()할때마다 inode를 접근한다고 하면, inode에 접근하는 코드가 나와야 하는데
아직까지 찾지를 못했습니다..
제가 좀더 찾아볼수 있게 힌트 좀 주세요..
Forums:
inode의 접근
fwrite()는 user-level의 함수이며, inode의 번경은 kernel-level에서 이루어지는 것으로 생각됩니다.
따라서 inode에 접근하는 코드는 C library 코드가 아닌 커널 코드를 보셔야 할 것 같습니다.
fwrite()가 write()와 fsync() 시스템콜을 결국 호출할 것으로 보이는데, 그 부분 커널 코드를 따라가면 되지 않을까요?
beautifool world~!
beautifool world~!
댓글 달기