[완료] I/O 함수들 중에서...
글쓴이: jos77 / 작성시간: 목, 2009/05/28 - 2:04오후
write 에서 O_APPEND 를 사용하면서 느끼는 건데
일반적인 file 의 increase 와 random write 는 가능한데
파일의 끝부분만 지우는 그러니까 파일의 사이즈를 줄이는 명령은 따로 없는 건가요?
예를 들어 txt 파일을 편집하면서 마지막 단락을 통째로 지운다거나 할때
우리가 보기에는 해당 파일의 끝부분이 삭제되는 걸로 보이지만
실제로는 해당 파일을 지우고, 해당 파일을 읽어들인 메모리 버퍼에서 뒷부분만 지우고, 그 버퍼로 새로운 (이전 파일보다 작은 사이즈의) 파일을 생성하는 구조로 이루어지는 게 맞나요?
그렇게 되면 해당 파일의 i-node 는 바뀌게 되는 건데, 실제로 그렇게 동작하는 건지 궁금합니다.
Forums:
truncate
ftruncate() 함수를 사용하면, 해당파일의 크기를 잘라(?) 버릴 수 있습니다.
그리고, 보통 편집한 파일을 저장할 때에는
O_CREATE를 써서 저장하죠?
확인했습니다
감사 ^^
-----
안녕하세요 소프트웨어 공학센터 장원석 책임입니다.
http://www.software.kr
댓글 달기