본문 바로가기

운영체제

파일 시스템

데이터와 프로그램의 저장 및 접근을 위한 기법을 제공하는 시스템. 파일, 메타데이터, 디렉터리 정보를 관리

특징

  • 파일: 비휘발성 저장장치에 저장 정보의 논리적 저장 단위
  • 메타데이터: 파일의 이름, 유형, 위치, 크기, 접근 권한, 소유자, 생성/변경/사용 시간 등
  • 커널 영역에서 동작
  • 파일 관리: 생성, 읽기, 저장, 삭제, 검색, 업데이트 등
  • 계층적 디렉터리 구조
  • 데이터의 무결성일관성 유지

구조

  • 메타 영역: 파일 정보(이름, 유형, 위치, 크기, 접근 권한, 소유자, 생성/변경/사용 시간 등) 저장.
  • 데이터 영역: 실제 파일 데이터 저장.

접근 방법

  • 순차 접근 (Sequential Access): 레코드 순서대로 파일 정보 처리
  • 직접 접근 (Random Access): 파일의 레코드를 임의 순서로 접근
  • 색인 접근 (Index Access): 색인을 통한 파일 내 레코드 직접 접근

디스크 할당 방법

  • 연속 할당 (Contiguous Allocation): 파일을 디스크에 연속적으로 저장
  • 연결 할당 (Linked Allocation): 빈 위치에 자유롭게 할당, 포인터로 다음 위치 가리킴
  • 색인 할당 (Indexed Allocation): 한 블록에 파일 데이터 인덱스 저장, 랜덤 액세스 가능

디렉터리 구조

  • 1단계 디렉터리: 모든 파일이 한 디렉터리 아래 위치.
  • 2단계 디렉터리: 각 사용자별로 별도 디렉터리 제공, MFD(Master File Directory)에 인덱싱
  • 트리 구조 디렉터리: 다단계 트리 구조로 확장, 계층적 파일 구성.
  • 비순환 그래프 디렉터리: 디렉터리간에 파일이나 서브 디렉터리의 공유가 가능, 관리 어려움(공유 파일 삭제시 고아 포인터 발생, 탐색 시 여러 경로 가능)
  • 일반 그래프 디렉터리: Link를 통해 순환 허용, 사용되지 않은 디스크 공간을 되찾기 위해 가비지 컬렉팅 필요

파일 권한(유닉스 및 유닉스 계열 시스템)

  • 읽기(Read) 권한
    • 파일: 내용을 읽을 수 있는 권한
    • 디렉터리: 디렉터리 내의 파일 목록을 볼 수 있는 권한
  • 쓰기(Write) 권한
    • 파일: 내용을 수정할 수 있는 권한
    • 디렉터리: 디렉터리 내에 파일을 생성하거나 삭제할 수 있는 권한
  • 실행(Execute) 권한
    • 파일: 실행할 수 있는 권한
    • 디렉터리: 디렉터리 내의 파일이나 서브 디렉터리로의 접근을 허용하는 권한

권한 할당 대상(유닉스 및 유닉스 계열 시스템)

  1. 파일 소유자(Owner):파일 또는 디렉터리의 생성자. 기본적으로 파일에 대한 모든 권한을 가짐
  2. 그룹(Group): 파일 소유자와 동일한 그룹에 속한 사용자들. 파일 또는 디렉터리에 대해 공유 권한을 설정할 수 있음
  3. 기타 사용자(Others): 소유자나 그룹에 속하지 않은 나머지 사용자들. 가장 제한적인 권한을 가짐

권한 표시 방법(유닉스 및 유닉스 계열 시스템)

유닉스 계열 시스템에서 파일 권한은 ls -l 명령어로 확인할 수 있으며, 아래와 같이 표시됨

  • 예: -rwxr--r--
    • 첫 번째 문자: 파일 유형(-는 일반 파일, d는 디렉터리)
    • 이후 세 문자: 파일 소유자의 권한(rwx)
    • 다음 세 문자: 그룹의 권한(r--)
    • 마지막 세 문자: 기타 사용자의 권한(r--)

 

'운영체제' 카테고리의 다른 글