DevGang
[OS-14] 파일과 파일 시스템 본문
1. 파일
- 파일의 개요 - 파일은 사용자가 작성한 서로 관련 있는 레코드의 집합체를 의미
- 파일 특성을 결정하는 기준
- 소명성(Volatility)
- 활성률(Activity)
- 크기(Size)
2. 파일 시스템
- 사용자와 보조기억장치 사이에 인터페이스를 제공
- 사용자가 파일을 생성, 수정, 제거할 수 있게 함
- 불의의 사태에 대비하여 파일의 백업(Backup)과 복구(Recovery)등의 기능을 제공
- 파일을 안전하게 사용할 수 있도록 하고 파일이 보호되어야 함
- 파일의 정보가 손실되지 않도록 데이터 무결성을 유지해야 함
3. 파일 디스크립터(File Descriptor)
- 파일을 관리하기 위한 시스템이 필요로 하는 파일에 대한 정보를 갖는 제어 블록을 의미
- 파일마다 독립적으로 존재하며 시스템에 따라 다른 구조를 가질 수 있음
- 보조기억장치 내에 저장되어 있다가 해당 파일이 오픈될 때 주기억장치로 이동
- 파일 디스크립터는 파일 시스템이 관리하므로 사용자가 직접 참조할 수 없음
- 파일 제어 블록(FCB , File Control Block)이라고도 함
- 파일 디스크립터의 정보
- 파일 이름
- 보조기억장치에서의 파일 위치
- 파일 구조
- 보조기억장치의 유형
- 액세스 제어 정보
- 파일 유형
- 생성과 제거의 날짜와 시간
- 최종 수정 날짜 및 시간
4. 파일의 구조
- 순차 파일(Sequential File)
- 순차 파일은 레코드를 논리적인 처리 순서에 따라 연속된 물리적 저장 공간에 기록
- 파일의 레코드들이 순차적으로 기록되어 판독할 때 순차적으로 접근
- 순차 접근 방식(SAM , Sequential Access Method)이라고 함
- 순차 접근이 가능한 자기 테이프를 모형화한 구조
- 순차 파일 장점
- 파일의 구성이 용이
- 순차적으로 읽을 수 있으므로 기억 공간의 이용 효율이 높음
- 물리적으로 연속된 공간에 저장되므로 접근 속도가 높음
- 어떠한 기억 매체에서도 구현 가능
- 순차 파일 단점
- 파일에 새로운 레코드를 삽입하거나 삭제 시 파일 전체를 복사하므로 시간이 많이 걸림
- 파일의 특정 레코드를 검색하려면 순차적으로 접근하기 때문에 검색 효율이 낮음
- 직접 파일(Direct File)
- 직접 파일은 파일을 구성하는 레코드를 임의의 물리적 저장 공간에 기록
- 레코드에 특정 기준으로 키를 할당
- 직접 접근 방식(DAM , Direct Access Method)이라고 함
- 해싱 함수(Hashing Function)를 이용하여 물리적 상대 레코드 주소를 계산한 후 해당 주소에 레코드 저장
- 레코드는 해싱 함수에 의해 계산된 물리적 주소를 통해 접근
- 직접 파일의 장점
- 직접 접근 기억장치(DASD)의 물리적 주소를 통하여 파일의 각 레코드에 직접 접근이 가능하여 접근 및 기록의 순서에 제약이 없음
- 접근 시간이 빠르고 레코드의 삽입, 삭제, 갱신이 용이
- 직접 파일의 단점
- 주소 변환 과정으로 인하여 시간이 소요됨
- 기억 공간의 효율이 저하될 수 있음
- 색인 순차 파일(Indexed Sequential File)
- 색인을 이용한 순차적인 접근 방법을 제공
- 색인 순차 접근 방식(ISAM , Index Sequential Access Method)이라고 함
- 각 레코드를 키값 순으로 논리적으로 저장하고, 시스템은 각 레코드의 실제 주소가 저장된 색인을 관리
- 자기 디스크에서 많이 사용되며 자기 테이프에서는 사용할 수 없음
- 물리적 특성에 따른 색인 구성
- 트랙 색인(track index)
- 실린더 색인(cylinder index)
- 마스터 색인(master index)
- 색인 순차 파일 장점
- 순차 처리와 임의 처리가 모두 가능
- 효율적인 검색이 가능하고 삽입, 삭제 갱신이 용이
- 색인 순차 파일 단점
- 색인 영역이나 오버플로우 영역을 설정해야 하므로 추가적인 기억 공간이 필요
- 색인을 이용하여 참조하기 때문에 접근 시간이 직접 파일보다 느림
'정보처리 > OS' 카테고리의 다른 글
[OS-16] 디스크 공간 할당 방법 (0) | 2021.02.07 |
---|---|
[OS-15] 디렉터리 구조 (0) | 2021.02.07 |
[OS-13] 디스크 스케줄링 (0) | 2021.02.07 |
[OS-12] 가상 기억장치 관리 전략 (0) | 2021.02.07 |
[OS-11] 주기억장치 할당 기법 (0) | 2021.02.07 |
Comments