반응형

파일 / 파일 시스템

파일

  • 서로 관련 있는 레코드의 집합체
  • 프로그램 구성의 기본 단위, 보조기억장치에 저장
  • 파일마다 이름, 위치, 크기, 작성 시기 등 여러 속성을 가짐

파일 시스템의 기능

  • 파일 시스템 : 파일의 저장, 액세스, 공유, 보호 등 보조 기억장치에서의 파일을 총괄하는 파일 관리 기술
  • 사용자와 보조기억장치 사이 인터페이스 제공
  • 파일 생성, 수정, 제거를 도움
  • 타인의 파일을 공동으로 사용 가능
  • 사용자 적합 구조로 파일 구성 가능
  • 파일의 예비(Backup)와 복구(Recovery)등 제공
  • 정보를 암호화(Encryption) 및 해독(Decrypt) 할 수 있음

파일 디스크립터(File Descriptor)

  • 파일 관리를 위해 시스템(운영체제)이 필요한 파일에 대한 정보를 갖고 있는 제어 블록(파일 제어 블록, FCB)
  • 보통 보조기억장치에 저장되어 있다가, 해당 파일 Open시 주기억장치로 옮겨짐
  • 파일마다 독립적 존재, 시스템에 따라 다른 구조 
  • 파일 시스템이 관리하므로 사용자 직접 참조 불가
  • 파일 디스크립터의 정보 :
    - 파일의 ID 번호
    - 파일 이름
    - 파일 크기
    - 보조기억장치에서의 파일 위치
    - 파일 구조
    - 보조기억장치의 유형
    - 액세스 제어 정보
    - 파일 유형
    - 생성 날짜와 시간
    - 제거 날짜와 시간
    - 최종 수정 날짜 및 시간
    - 액세스한 횟수

파일의 구조

순차 파일 / 색인 순차 파일

순차 파일(Sequential File)

  • 레코드를 논리적 처리 순서에 따라 연속된 물리적 저장공간에 기록
  • 급여 관리 등 변동 사항이 크지 않고 기간별 일괄 처리를 하는 경우 적합
  • 주로 순차 접근이 가능한 자기 테이프에서 사용
  • 장점 :
    - 파일 구성 용이
    - 기억공간 효율 높음
    - 사용 키 순서대로 레코드 처리 시 처리속도 빠름
    - 처리비용 절감
    - 어떤 기억 매체든 가능
  • 단점 :
    - 새로운 레코드 삽입, 삭제 시 파일 전체 복사를 수행하므로 시간이 오래걸림
    - 검색 효율 낮음
    - 접근 시간 / 응답 시간 느림

색인 순차 파일(Indexed Sequential File)

  • 순차 파일과 직접 파일의 편성 방법이 결합된 형태
  • 각 레코드를 키 값 순으로 논리적 저장 후 시스템이 레코드의 실제 주소가 저장된 색인 관리
  • 레코드 참조 시 색인 탐색 후 해당 포인터(주소)로 직접 참조
  • 기본 영역, 색인 영역, 오버플로 영역으로 구성,
    색인 영역은 트랙 색인 영역, 실린더 색인 영역, 마스터 색인 영역으로 분류
  • 장점 : 
    - 순차 처리 임의 처리 모두 가능
    - 효율적 검색 가능
    - 삭제, 삽입, 생긴 용이
  • 단점 : 
    - 색인 및 오버플로 처리를 위한 추가공간 필요
    - 접근 시간이 직접 파일보다 느림

직접 파일(Direct File), 직접 접근 방식

  • 레코드를 임의의 물리적 저장공간에 기록
  • 레코드에 특정 기준으로 키 할당 후 해싱 함수(Hashing Function)를 이용하여 보조기억장치의 물리적 상대 레코드 주소를 계산 후 해당하는 주소에 레코드 저장
  • 물리적 주소로 직접 접근 가능
  • 임의 접근이 가능한 자기 디스크나 자기 드럼 사용
  • 장점 : 
    - 파일 각 레코드에 직접 접근 및 기록 가능
    - 접근 시간이 빠름
    - 레코드 삽입, 삭제, 갱신 용이
  • 단점 : 
    - 레코드 주소 변환 과정으로 시간 소요
    - 기억공간 효율 저하
    - 기억장치의 물리적 구조에 대한 지식 필요

디렉터리의 구조

디렉터리 : 파일 시스템 내부에 있으며, 디스크에 존재하는 파일에 대한 여러 정보를 가진 특수 형태의 파일

   
1단계
디렉터리
 - 가장 간단하고, 모든 파일이 하나의 디렉터리 내에 위치
 - 모든 파일이 유일한 이름을 가짐
 - 모든 파일이 같은 디렉터리 내에 유지되므로 이해가 용이하나, 파일이나 사용자가 증가하면 관리가 복잡함
2단계
디렉터리
 - 중앙에 마스터 파일 디렉터리(MFD)와 아래 사용자별 디렉터리(UFD)가 있는 2계층 구조
 - 마스터 파일 디렉터리는 사용자 파일 디렉터리를 관리, 사용자 파일 디렉터리는 사용자별 파일 관리
 - 서로 다른 디렉터리에서 동일 파일 이름 사용 가능
트리
디렉터리
 - 하나의 루트 디렉터리와 여러 종속(서브) 디렉터리로 구성된 구조
 - DOS, Windows, UNIX등 운영체제에서 사용
 - 동일한 이름의 파일 및 디렉터리 생성 가능
 - 디렉터리 생성 및 파괴 용이
 - 각 디렉터리는 서브 디렉터리 및 파일을 가짐
 - 포인터로 디렉터리를 탐색, 절대 경로명과 상대 경로명 사용
비순환
그래프
디렉터리
 - 하위 파일 및 디렉터리를 공동으로 사용하고 사이클이 허용되지 않는 구조
 - 하나의 파일이나 디렉터리가 여러 경로 이름을 가짐
 - 공유된 파일 삭제 시 고아 포인터(Dangling Pointer) 발생 가능
일반적인
그래프
디렉터리
 - 트리 구조에 링크(Link)를 첨가하여 순환을 허용하는 그래프 구조
 - 디렉터리와 파일공유에 완전한 융통성
 - 불필요한 파일 제거로 사용 공간을 늘리기 위해 참조 계수기(카운터) 필요

 

반응형

+ Recent posts