파일 시스템 이란?
공식 문서에서는 컴퓨터 파일의 발견 및 접근의 용이성을 위해 보관, 조직하는 체제라고만 하면 아무래도 이해하기가 어렵다..
그래서 그림으로 보고 이해하자면 이렇다

우리가 파일을 만들고, 이름을 붙이고, 저장하고, 필요할 때 찾아서 열 수 있는 모든 과정을 할 수 있게 도와주는 것이 파일시스템의 역할이다.
쉽게 말해, 파일 시스템은 컴퓨터의 "디지털 서랍장" 이라고 생각하면 된다.
이미지 처럼 데이터를 구조화 시켜서 .. 파일 디렉터리 구조를 볼 수 있다
파일 시스템이 필요한 이유는?
데이터를 체계적으로 조직화 함.. 파일과 디렉토리를 사용하여 데이터를 쉽게 찾을 수 있고 관리할 수 있음
CRUD 기능을 편하게 쓸 수 있다
데이터의 보안과 무결성을 유지하는 메커니즘을 제공함으로써, 민간함 데이터를 보호할 수 있음
파일 시스템 종류
일단 자료를 긁어 모아 왔다.
그래도 명확하게 알아두는 게 좋아보인다
FAT32(File Allocation Table)
- FAT16을 보강한 것으로, 최대 2TB까지 지원함
- 암호화 및 압축이 불가능하다
- 파일명 최대 길이는 영문 256자이다
- 클러스트당 4KB를 사용하여 내부 단편화를 줄였다
NTFS(New Technology file System)
- 암호화 및 압축을 지원하며, 대용량 파일 시스템을 지원한다
- 가변 클러스터 크기(512 ~ 64KB)이며, 기본 값은 4KB이다
- 트랜잭션 로깅을 통한 복구/오류 수정이 가능하다
- Window NT 이상에서 지원한다
EXT3(Second Extended File System)
- EXT2에 저널링 기능 추가 및 온라인 파일 시스템이 증대됐다.
- 파일 시스템 변경 시 저널에 먼저 수정 내용을 기록한다(갑작스러운 다운 시 빠르게 오류 복구).
- 온라인 조각 모음이 불필요하다.(장시간 사용 시 조각화 발생).
- 디스크 조각화를 최소화한다.
EXT4(Second Extended File System)
- 16TB까지 파일 시스템을 지원하며, 볼륨은 1엑사바이트(Exabyte)까지 지원한다.
- Block Mapping 방식 및 Extends 방식을 지원한다.
- 저널 Checksum 기능이 추가되어 안정성이 강화되었다.
- 하위 호환성 지원 : exy3, ext2와 호환 가능
- Delayed allocation : 디스크에 쓰이기 전까지 블록 할당을 미루는 기술로 조각화 방지에 효과적
- 온라인 조각 모음 : 조각화 방지를 위한 커널 레벨의 기술
- Persistentt pre-allocation : 파일 전체만큼의 공간은 사전 할당, 스트리밍, 데이터 베이스 등에 유용
UFS(Unix File System)
- VTOC 디스크 레이블 : 각 파티션의 기본 정보
- 부트블록 : 부트스트랩에 필요한 파일들
- 프라이머리 슈퍼블록 : 데이터 블록의 개수, 실린더 그룹의 개수, 마운트 정보
- 백업 슈퍼블록 : 각 실린더마다 슈퍼블록에 대한 복사본을 가짐
- 실린더 그룹 : 슈퍼블록, 실린더 그룹 블록, i-node 테이블, 데이터 블록을 포함
- 슈퍼블록 : 파일 시스템 크기, i-node 테이블의 크기, free 블록 리스트 등 파일 시스템 관리 정보
- 실린더 그룹 블록 : 실린더 그룹 내의 유효 블록들의 비트맵 정보나 통계 정보
- i-node 테이블 : 파일에 대한 중요한 정보, 파일크기, 위치, 유형, 사용 허가권, 날짜 정보
- 데이터 블록 : 실제 데이터가 저장되는 공간
HFS+/APFS (Hierarchical File System Plus/Apple File System):
- macOS에서 사용되는 파일 시스템입니다.
- HFS+는 macOS의 기본 파일 시스템이었으며, APFS는 이를 대체하는 파일 시스템으로, 성능과 보안, 효율성을 크게 개선했습니다.
exFAT (Extended File Allocation Table):
- FAT32의 확장판으로, 파일 크기와 디스크 크기 제한이 완화되어 대용량 파일과 디스크에 적합합니다.
- Windows와 macOS 모두에서 사용됩니다.
'IT > 운영체제' 카테고리의 다른 글
운영체제 개요 (0) | 2024.11.17 |
---|---|
[Linux] PV, VG, LV 명령어 (0) | 2024.08.09 |
리눅스 Destination Host Unreachable 원인과 해결방법 (0) | 2024.08.08 |
Vmware 네트워크 방식 Host-only, Bridge, NAT 구성 (0) | 2024.08.08 |
리눅스(Linux) 파일 시스템 swap & boot란? (0) | 2024.08.07 |