리눅스 파일에는 atime, ctime, mtime 3가지 시간 정보가 있다.
각각 Access Time, Change Time, Modify Time을 의미한다.
파일의 메타데이터 정보를 보여주는 stat() 명령어를 공부하다가 세 가지 시간 정보가 등장하는 것을 확인했다.
atime (Access Time)
파일에 마지막으로 접근 Access한 시간을 기록한다.
time of last access
파일이 어떤 명령어나 스크립트, 프로그램에 의해 열리거나 읽혔을 때 갱신된다.
vi나 emac 같은 에디터 프로그램 뿐만 아니라 cat, tail 같은 명령어에 의해 읽힌 경우에도 갱신된다.
Access Time은 너무 자주 갱신이 된다. 파일에 접근할 때마다 inode에 갱신해주어야 하기 때문에 애플리케이션의 성능 하락을 유발할 수 있다.
ctime (Change Time)
파일이 마지막으로 변경 Change된 시간을 기록한다.
time of last status change
파일의 소유자가 변경되거나 접근 권한이 수정되는 등 파일의 inode 정보가 변경되었을 경우와 파일의 데이터가 변경되었을 경우 모두 갱신된다.
mtime (Modify Time)
파일이 마지막으로 수정 Modify된 시간을 기록한다.
time of alst modification
파일의 데이터가 수정되었을 때 갱신된다.
ctime과 다르게 파일의 권한이나 소유자 정보 등이 수정되었을 경우에는 갱신되지 않는다.
'SKKU SW > Operating System' 카테고리의 다른 글
[OS] [Linux / UNIX] sync, fsync 함수 (1) | 2024.06.09 |
---|---|
[OS] Anonymous pipe와 Named pipe (0) | 2024.06.07 |
[OS] Multiprocessor Scheduling - SQMS와 MQMS (1) | 2024.04.06 |
[OS] Multiprocessor Scheduling(1) - Cache Coherence(캐시 일관성) & Bus snooping(버스 스누핑) (2) | 2024.03.26 |
[OS] System call 시스템 콜 (0) | 2024.03.25 |