👩‍💻 알고리즘/🎛️ 컴퓨터 구조 & OS

[ 혼공학습단 12기 ] 15강 - 파일 시스템

오브 🧙‍♂️ 2024. 8. 26. 03:27

[ 파일 ]

하드 디스크나 SSD 같은 보조기억장치에 저장된 정보의 집합

파일을 이루는 정보인 속성과 메타데이터

운영체제는 파일과 디렉터리를 블록 단위로 읽고 씀

 

[ 폴더 ] 

파일들을 관리하기 위한 디렉터리

디렉터리는 트리 구조를 가짐 ( 최상위 디렉터리(루트)가 있고 아래에 여러 서브(자식) 디렉터리가 있음 )

 

[ 경로 ] 

디렉터리를 이용해 파일 위치, 파일 이름을 특정 짓는 정보

 

1. 절대 경로

루트 디렉터리에서 자기 자신까지 이르는 고요한 경로

2. 상대 경로

현재 디렉터리부터 시작하는 경로

 

[ 파티셔닝 ]

저장 장치의 논리적인 영역을 구획하는 작업

파티션(파티셔닝으로 나눈 각 구역)마다 다른 파일 시스템을 설정할 수 있음

 

[ 파일 할당 ]

1. 연속 할당

가장 단순한 방식

보조기억장치 내 연속적인 블록에 파일을 할당하는 방식

파일의 첫 번째 블록 주소와 블록 단위의 길이만 알면 됨

구현이 단순하지만, 외부 단편화를 야기

 

2. 불연속 할당

파일이 여러 블록에 흩어져 저장되어도 무방

2-1. 연결 할당

연속 할당 문제를 해결

각 블록 일부에 다음 블록의 주소를 저장하여 각 블록이 다음 블록을 가리키는 형태로 할당하는 방식

파일을 이루는 데이터를 연결 리스트로 관리

반드시 첫 번째 블록부터 하나씩 차례대로 읽어야 되고, 하드 웨어 고장이나 오류 발생 시 해당 블록 이후 블록은 접근할 수 없다는 단점

2-2. 색인 할당

파일의 모든 블록 주소를 색인 블록이라는 하나의 블록에 모아 관리하는 방식

연결 할당과 달리 파일 내 임의의 위치에 접근하기 쉬움

 

[ 파일 시스템 ]

파일과 디렉터리를 보조기억장치에 저장하고 접근할 수 있게 하는 운영체제 내부 프로그램

다양한 종류가 있고, 하나의 컴퓨터에서 여러 파일 시스템을 사용할 수 있음

 

1. FAT 파일 시스템

각 블록에 포함된 다음 블록의 주소들을 한데 모아 테이블 형태로 관리하여(FAT) 연결 할당의 단점을 보완한 파일 시스템

 

2. 유닉스 파일 시스템

색인 할당 기반

파일마다 색인 블록(i-node)이 있고, i-node 마다 번호가 부여되어 있음.

i -node의 크기가 유한해 블록 개수가 많다면 i-node 하나만으로 파일의 데이터 블록을 모두 가리킬 수 없음.

문제 해결 방법

1. 블록 주소 중 열두 개에는 직접 블록 주소를 저장함

2. 1번으로 충족되지 못하면, 열세 번째 주소에 단일 간접 블록 주소 저장함

3. 2번으로 충족되지 못하면, 열네 번째 주소에 이중 간접 블록 주소 저장함

4. 3번으로 충족되지 못하면, 열다섯 번째 주소에 삼중 간접 블록 주소 저장함

=> 이를 통해 파일 크기가 커도 파일 데이터를 모두 가리 킬 수 있음