파일 관리

지섭·2023년 8월 3일

파일

파일: 관련된 정보를 담고 있는 연속적인(Contiguous) 논리적 주소 공간

  • 종류:
    - 데이터
    • 프로그램
  • 특성:
    - 이름
    • 타입
    • 위치
    • 크기
    • 보안
    • 시간, 날짜, 유저 정보
    • 파일에 대한 정보는 디렉토리 구조로 디스크에 저장
  • 작업:
    - create
    • write
    • read
    • truncate
    • delete
    • open
    • close
  • 파일 권한
  • 권한: RWX(비트 3개로 표현, R,W,X 순) 대한 권한 표시
  • 접근 방법: 순차 접근(Sequential Access)와 직접 접근(Direct Access)

파일 시스템 구조

  • 디렉토리 구조

  • Single level

    • 모든 유저가 하나의 디렉토리 사용
    • Naming P, Grouping P 발생
  • Two level

    • 각 유저마다 디렉토리 구분
    • Grouping P 발생
  • 트리 구조

    • 여전히 한계 존재
      • 파일이 많아지면?
      • 트리가 깊어지면?

저장공간을 어떻게 할당?

  • 연속적으로 할당

    • 빈 공간(fragmentation) 관리 필요
    • 공간 확장 어려움

      - 주로 first-fit 또는 best-fit 사용
      - 주기적으로 compaction 필요
  • 링크로 할당

    - 파일을 연속적으로 저장하지 않아도 됨
    - compaction 필요 X
    - P: 링크가 끊어지면? 에러 발생

  • FAT(File Allocation Table) 이용

    • 디스크를 파티션으로 나눔, 각 파티션마다 FAT 존재
    • depth 적을 때는 빠름
    • 파일 많을 때는 조금 느림, FAT 커짐
    • 모든 파일을 디렉토리 아래 트리 구조로 구현
  • 인덱스로 할당

    • FAT를 파일 수준까지 나눔
    • inode 이용
    • Multi-level 인덱스 이용
  • 하이브리드 인덱스 이용(UNIX)

    	- 작은 파일은 직접 포인터, 큰 파일은 간접 포인터 이용

UNIX 파일 시스템

  • 파일은 inode로 표현
    - inode: 파일의 정보를 담고 있는 구조

    • 타입, 접근 권한, Owner, 생성 시간, 수정 시간, 크기, 데이터 블록 대한 포인터
  • 하이브리드 인덱스 방식 이용

  • 디렉토리도 파일의 일종

    • 트리 구조로 구성
    • 각 덴트리(Directory Entry)는 파일 이름과 inode로 구성
  • 디바이스도 파일

  • 링크

Reference

  1. 강순주 교수님 PPT 12
profile
시작보다 중요한 건 지속이다

0개의 댓글