정보 관리

정보처리자격증정보관리
avatar
2025.04.28
·
13 min read

파일 시스템

파일 시스템은 파일의 저장, 액세스, 공유, 보호 등 보조기억장치에서의 파일을 총괄하는 파일 관리 기술이다.

- 사용자와 보조기억장치 사이에서 인터페이스를 제공한다.
- 사용자가 파일을 생성, 수정, 제거할 수 있도록 한다.
- 적절한 제어 방식을 통해 타인의 파일을 공동으로 사용할 수 있도록 한다.
- 파일 공유를 위해서 판독만 허용, 기록만 허용, 수행만 허용 또는 이들을 여러 형태로 조합한 것 등 여러 종류의 액세스 제어 방법을 제공한다.
- 사용자가 적합한 구조로 파일을 구성할 수 있도록 한다.
- 불의의 사태를 대비하여 파일의 예비(Backup)와 복구(Recovery) 등의 기능을 제공한다.
- 사용자가 물리적 장치 이름 대신에 기호화된 이름을 사용할 수 있도록 한다.
- 사용자가 파일을 편리하게 사용할 수 있도록 파일의 논리적 상태(디렉토리)를 보여주어야 한다.
- 파일을 안전하게 사용할 수 있도록 하고, 파일이 보호되어야 한다.
- 파일의 정보가 손실되지 않도록 데이터 무결성을 유지해야 한다.


파일 디스크립터 (File Descriptor, 파일 서술자)

파일을 관리하기 위한 시스템(운영체제)이 필요로 하는 파일에 대한 정보를 가진 제어 블록을 의미하며, 파일 제어 블록 (FCB: File Control Block)이라고도 한다.

- 파일 디스크립터는 파일마다 독립적으로 존재하며, 시스템에 따라 다른 구조를 가질 수 있다.
- 보통 파일 디스크립터는 보조기억장치 내에 저장되어 있다가 해당 파일이 Open될 때 주기억장치로 옮겨진다.
- 파일 디스크립터는 파일 시스템이 관리하므로 사용자가 직접 참조할 수 없다.

파일 디스크립터의 정보

- 파일 이름 및 파일의 크기
- 보조기억장치에서의 파일 위치
- 파일 구조 : 순차 파일, 색인 순차 파일, 색인 파일 등
- 보조기억장치의 유형 : 자기 디스크, 자기 테이프 등
- 액세스 제어 정보
- 파일 유형 : 텍스트 파일, 목적 프로그램 파일 (2진 파일, 기계어 파일, 실행 파일) 등
- 생성 날짜와 시간, 제거 날짜와 시간
- 최종 수정 날짜 및 시간
- 액세스한 횟수 : 파일 사용 횟수


파일의 구조

파일의 구조는 파일을 구성하는 레코드들이 보조기억장치에 편성되는 방식을 의미하는 것으로, 편성 방법에 따라 순차 파일, 색인 순차 파일, 랜덤 파일, 분할 파일 등이 있다.

순사 파일 (Sequential File, 순서 파일)

- 레코드를 논리적인 처리 순서에 따라 연속된 물리적 저장공간에 기록하는 것을 의미한다.
- 파일의 레코드들이 순차적으로 기록되어 판독할 때도 순차적으로 접근하기 때문에 순차 접근 방식(SAM, Seqential Access Method)이라고도 한다.
- 급여 업무처럼 전체 자료를 처리 대상으로 일괄 처리하는 업무에 사용된다.
- 순차 접근이 가능한 자기 테이프를 모형화한 구조이다.

직접 파일 (Direct File)

- 파일을 구성하는 레코드를 임의의 물리적 저장공간에 기록하는 것이다.
- 레코드에 특정 기준으로 키가 할당되며, 해싱 함수(Hashing Function)를 이용하여 이 키에 대한 보조기억장치의 물리적 상대주소를 계산한 후 해당하는 주소에 레코드를 저장한다.
- 레코드는 해싱 함수에 의해 계산된 물리적 주소를 통해 접근이 가능하다.
- 임의 접근이 가능한 자기 디스크나 자기 드럼을 사용한다.

색인 순차 파일 (Indexed Sequential File)

- 순차 파일과 직접 파일에서 지원하는 편성 방법이 결합된 형태이다.
- 색인(인덱스)을 이용한 순차적인 접근 방법을 제공하여 색인 순차 접근 방식(ISAM, Index Sequential Access Method)이라고도 한다.
- 각 레코드를 키 값 순으로 논리적으로 저장하고, 시스템은 각 레코드의 실제 주소가 저장된 색인을 관리한다.
- 레코드를 참조하려면 색인을 탬색한 후 색인이 가리키는 포인터(주소)를 사용하여 참조할 수 있다.
- 일반적으로 자기 디스크에서 많이 사용되며, 자기 테이프에서는 사용할 수 없다.
- 색인 순차 파일은 기본 영역, 색인 영역, 오버플로 영역으로 구성된다.
- 기본 영역 (Prime Area) : 실제 레코드가 기록되는 데이터 영역으로, 각 레코드들은 키 값 순으로 저장된다.
- 색인 영역 (Index Area) : 기본 영역에 있는 레코드들의 위치를 찾아가는 색인이 기록되는 영역으로, 트랙 색인 영역 (Track Index Area), 실린더 색인 영역 (Cylinder Index Area), 마스터 색인 영역 (Master Index Area)으로 분류한다.
- 오버플로 영역 (Overflow Area) : 기본 영역에 빈 공간이 없어서 새로운 레코드의 삽입이 불가능할 때를 대비하여 예비로 확보해 둔 영역이다.


디렉토리의 구조

디렉토리는 파일 시스템 내부에 있는 것으로, 효율적인 파일 사용을 위해 디스크에 존재하는 파일에 대한 여러 정보를 가지고 있는 특수한 형태의 파일이다.

1단계 디렉토리

- 가장 간단하고, 모든 파일이 하나의 리렉토리 내에 위치하여 관리되는 구조이다.
- 모든 파일들이 유일한 이름을 가지고 있어야 한다.

2단계 디렉토리

- 중앙에 마스터 파일 디렉토리가 있고, 그 아래 사용자별로 서로 다른 파일 디렉토리가 있는 2계층 구조이다.
- 마스터 파일 디렉토리는 사용자 파일 디렉토리를 관리하고, 사용자 파일 디렉토리는 사용자별 파일을 관리한다.

트리 디렉토리

- 하나의 루트 디렉토리와 여러 개의 종속(서브) 디렉토리로 구성된 구조이다.
- DOS, Windows, UNIX 등의 운영체제에서 사용되는 디렉토리 구조로, 디렉토리 탐색은 포인터에 의해 계층적으로 이루어진다.

비순환 그래프 디렉토리

- 하위 파일이나 하위 디렉토리를 공동으로 사용할 수 있는 것으로, 사이클이 허용되지 않는 구조이다.
- 공유된 파일을 삭제할 경우 고아 포인터(Dangling Pointer)가 발생할 수 있다.

일반적인 그래프 디렉토리

- 트리 구조에 링크(Link)를 첨가시켜 순환을 허용하는 그래프 구조이다.
- 불필요한 파일을 제거하여 사용 공간을 늘리기 위한 참조 계수기가 필요하다.


자원 보호

자원 보호는 컴퓨터 시스템에서 사용자, 프로세스 등과 같은 주체가 프로세스, CPU, 기억장치 등과 같은 객체(자원)에 불법적으로 접근하는 것을 제어하고, 객체(자원)의 물리적인 손상을 예방하는 기법을 의미한다.

접근 제어 행렬 (Access Control Matrix)

- 자원 보호의 일반적인 모델로, 객체에 대한 접근 권한을 행렬로써 표시한 기법이다.
- 행(Row)은 영역(사용자, 프로세스), 열(Column)은 객체, 각 항은 접근 권한의 집합으로 구성된다.

전역 테이블 (Global Table)

- 가장 단순한 구현 방법으로, 세 개의 순서쌍인 영역, 객체, 접근 권한의 집합을 목록 형태로 구성한 기법이다.
- 테이블이 매우 커서 주기억장치에 저장할 수 없으므로 가상기억장치 기법을 사용해야 하며, 주기억장치에 저장될 경우 공간을 낭비하게 된다.

접근 제어 리스트 (Access Control List)

- 접근 제어 행렬에 있는 각 열, 즉 객체를 중심으로 접근 리스트를 구성한 것이다.
- 각 객체에 대한 리스트는 영역, 접근 권한의 순서쌍으로 구성되며, 객체에 대한 접근 권한을 갖는 모든 영역을 정의한다.
- 접근 권한이 없는 영역은 제외된다.

권한(자격) 리스트 (Capability List)

- 접근 제어 행렬에 있는 각 행, 즉 영역을 중심으로 권한 리스트를 구성한 것이다.
- 각 영역에 대한 권한 리스트는 객체와 그 객체에 허용된 조작 리스트로 구성된다.
- 권한 리스트는 영역과 결합되어 있지만 그 영역에서 수행중인 프로세스가 직접 접근할 수는 없다.
왜냐하면 권한 리스트는 운영체제에 의해 유지되며 사용자에 의해서 간접적으로만 접근되는 보호된 객체이기 때문이다.







- 컬렉션 아티클