
1. 서론: 파일 저장, 그 뒤에 숨은 거대한 마법
우리가 ‘저장’ 버튼을 누르는 아주 평범한 순간, 컴퓨터 내부에서는 어떤 일이 벌어질까요? 우리는 그저 파일이 폴더 안에 안전하게 보관될 것이라 믿지만, 그 믿음의 이면에는 수십 년간 발전해 온 정교한 공학의 결정체, ‘파일 시스템’이 있습니다. 파일 시스템은 사용자가 보는 직관적인 폴더 구조와 하드웨어가 인식하는 끝없는 데이터 블록의 배열이라는 두 세상 사이의 거대한 간극을 메워주는 운영체제의 핵심 번역가입니다. 오늘, 이 똑똑한 번역가가 혼돈 속에서 어떻게 질서를 만들어내는지, 그 ‘아름다운 거짓말’의 내부를 함께 탐험해 보겠습니다.

2. 첫 번째 거짓말: 파일과 디렉터리의 환상
우리가 ‘파일’이라고 부르는 것은 단순히 데이터 덩어리가 아닙니다. 파일 이름, 크기, 소유자, 권한 등 파일을 설명하는 신분증, 즉 ‘메타데이터’가 항상 따라다닙니다. 파일 시스템의 중요한 임무 중 하나는 바로 이 메타데이터를 효율적으로 관리하는 것입니다. 그렇다면 수만 개의 파일이 담긴 디렉터리에서 특정 파일을 어떻게 순식간에 찾아낼까요? 과거에는 목록을 처음부터 끝까지 훑는 비효율적인 방식을 사용했지만, 현대 파일 시스템은 ‘해시 테이블’을 사용합니다. 파일명을 고유한 주소값으로 변환하여 단 한 번의 연산으로 파일의 위치를 찾아내는 경이로운 속도의 비밀입니다.

3. 두 번째 거짓말: 갑작스런 정전에도 끄떡없는 비밀, 저널링
드라이브를 포맷하면 부트 블록, 슈퍼 블록, 데이터 블록 등 파일 시스템의 청사진이 그려집니다. 하지만 파일을 하나 생성하는 여러 단계의 작업 도중 갑자기 전원이 꺼진다면 어떻게 될까요? 데이터와 메타데이터의 일관성이 깨지며 파일 시스템 전체가 손상될 수 있습니다. 이 심각한 문제를 해결하기 위해 현대 파일 시스템은 ‘저널링’ 기법을 도입했습니다. 실제 데이터를 변경하기 전, ‘무엇을 어떻게 바꿀 것이다’라는 계획을 ‘저널’이라는 메모장에 먼저 기록하는 것입니다. 만약 문제가 생겨도 이 기록을 보고 신속하게 시스템을 복구할 수 있어, 파일 시스템 안정성의 패러다임을 완전히 바꾼 혁신적인 기술입니다.

4. 세 번째 거짓말: 흩어진 데이터를 질서정연하게, 인덱스 할당
하나의 파일을 디스크의 수많은 빈 공간 중 어디에, 어떤 방식으로 배치할까요? 이를 ‘할당’의 문제라고 합니다. 데이터를 디스크에 연속으로 붙여놓는 ‘연속 할당’은 빠르지만 공간 낭비가 심하고, 데이터 조각들이 꼬리 물기처럼 다음 조각의 위치를 가리키는 ‘연결 할당’은 유연하지만 특정 위치에 접근하기 느렸습니다. 현대 파일 시스템은 이 둘의 장점만 모은 ‘인덱스 할당’ 방식을 표준으로 채택했습니다. 파일마다 데이터 조각들의 주소를 모두 기록해둔 ‘인덱스 블록(주소록)’을 두는 방식입니다. 덕분에 데이터는 어디에나 유연하게 배치하면서도, 주소록을 통해 어떤 위치의 데이터든 빠르게 찾아갈 수 있는 최적의 해결책이 되었습니다.

5. 하드웨어의 진화와 새로운 거짓말의 등장
파일 시스템의 최적화 목표는 하드웨어의 특성에 따라 끊임없이 변화합니다. 물리적인 헤드가 움직여야 했던 HDD 시절에는, 헤드의 움직임을 최소화하는 ‘엘리베이터 알고리즘’과 같은 디스크 스케줄링이 성능의 핵심이었습니다. 하지만 움직이는 부품이 없는 SSD가 등장하며 게임의 규칙은 완전히 바뀌었습니다. 탐색 시간이라는 개념이 사라진 대신, 특정 메모리 셀만 닳지 않도록 쓰기 작업을 골고루 분산시키는 ‘웨어 레벨링’ 기술이 새로운 과제로 떠올랐습니다. 이처럼 파일 시스템은 하드웨어의 물리적 한계를 감추고 사용자에게 편리함을 제공하는 거대한 ‘추상화의 탑’이며, 기술의 진화는 계속해서 더 새롭고 아름다운 거짓말을 요구하고 있습니다.