file lifecycle

열린 파일 핸들 상태

open 이후에는 디스크 블록보다 파일 디스크립터, 현재 오프셋, 잠금, close 시점이 실제 버그의 원인이 되는 경우가 많습니다.

연산 흐름
01open 02권한 확인 03offset 이동 04read write 05close
파일 속성

유형, 크기, 소유자, 권한, 시간 정보는 파일 내용을 읽기 전에도 OS가 판단하는 메타데이터입니다.

열린 핸들

프로세스는 파일 이름이 아니라 디스크립터를 통해 열린 파일 상태와 현재 오프셋을 다시 찾습니다.

잠금 범위

파일 잠금은 협력적 사용을 전제로 하며 프로세스 간 쓰기 순서를 명확히 하는 데 쓰입니다.

누수 징후

close가 빠지면 삭제한 파일도 공간이 반환되지 않거나 FD 한도에 부딪히는 장애로 이어집니다.