컴퓨터 저장장치의 데이터는 어떻게 저장될까?

컴퓨터를 사용하다 보면 사진, 문서, 게임, 영상처럼 수많은 데이터를 저장하게 된다. 그런데 파일을 저장한다는 것은 실제로 컴퓨터 안에서 어떤 일이…
1 Min Read 0 33

컴퓨터를 사용하다 보면 사진, 문서, 게임, 영상처럼 수많은 데이터를 저장하게 된다. 그런데 파일을 저장한다는 것은 실제로 컴퓨터 안에서 어떤 일이 일어나는 것일까? 우리가 화면에서 ‘저장’ 버튼을 누르면 단순히 파일이 사라지지 않도록 보관되는 것처럼 보이지만, 저장장치 내부에서는 데이터를 아주 작은 단위의 전기적 또는 자기적 상태로 바꾸는 과정이 진행된다. 컴퓨터 저장장치의 원리를 이해하려면 먼저 모든 데이터가 결국 0과 1로 표현된다는 사실부터 알아야 한다.

컴퓨터는 글자나 사진을 사람이 보는 형태 그대로 저장하지 않는다. 모든 데이터를 이진수인 0과 1로 변환해 처리한다. 예를 들어 문서에 입력한 한 글자도 특정한 숫자로 변환되고, 그 숫자가 다시 0과 1의 조합으로 저장된다. 사진 역시 수많은 픽셀의 색상과 밝기 정보를 숫자로 바꾼 뒤 이진 데이터 형태로 기록한다. 음악과 영상도 마찬가지다. 결국 저장장치는 엄청나게 많은 0과 1을 구분할 수 있는 상태를 만들어 데이터를 보관한다고 볼 수 있다.

저장 방식은 저장장치의 종류에 따라 달라진다. 대표적으로 HDD는 자기장을 이용한다. HDD 내부에는 플래터라고 불리는 둥근 금속 디스크가 들어 있으며, 이 디스크가 매우 빠른 속도로 회전한다. 플래터 표면에는 데이터를 기록할 수 있는 아주 작은 자기 영역이 존재한다. 컴퓨터가 데이터를 저장하면 기록 헤드가 각 영역의 자성 방향을 바꾸고, 서로 다른 자기 상태를 0과 1로 구분한다.

HDD에서 파일을 불러올 때는 반대 과정이 이루어진다. 플래터가 회전하면서 필요한 데이터가 있는 위치로 이동하면 헤드가 자기 상태를 읽는다. 이를 다시 0과 1의 데이터로 변환하고 운영체제가 해석해 사용자에게 사진이나 문서 등의 형태로 보여준다. HDD를 사용할 때 ‘드르륵’ 같은 소리가 들리는 이유도 플래터가 회전하고 헤드가 움직이는 기계적인 구조 때문이다.

SSD는 HDD와 완전히 다른 방식으로 데이터를 저장한다. SSD에는 회전하는 디스크가 없으며 낸드 플래시 메모리라는 반도체가 사용된다. 낸드 플래시 내부에는 아주 많은 메모리 셀이 존재하고, 각각의 셀에 전자를 저장하거나 제거하면서 데이터를 기록한다.

쉽게 생각하면 각각의 메모리 셀을 아주 작은 전기 저장 공간이라고 볼 수 있다. 셀 안에 얼마나 많은 전자가 들어 있는지에 따라 서로 다른 상태를 구분하고 이를 0과 1의 데이터로 해석한다. 초기 플래시 메모리에서는 하나의 셀에 비교적 적은 정보를 저장했지만 기술이 발전하면서 하나의 셀에 여러 비트의 데이터를 저장할 수 있게 되었다.

대표적으로 SLC는 하나의 셀에 1비트, MLC는 2비트, TLC는 3비트, QLC는 4비트를 저장한다. 하나의 셀에 더 많은 비트를 저장할수록 같은 크기의 반도체에 더 많은 데이터를 담을 수 있어 저장 용량을 늘리고 가격을 낮추는 데 유리하다. 하지만 하나의 셀에서 더 많은 전압 상태를 구분해야 하기 때문에 성능이나 수명 측면에서는 차이가 생길 수 있다.

SSD가 HDD보다 빠른 가장 큰 이유도 이러한 구조에 있다. HDD는 원하는 데이터를 읽기 위해 플래터를 회전시키고 헤드를 물리적으로 이동시켜야 한다. 반면 SSD는 반도체에 전기 신호를 보내 필요한 데이터에 바로 접근한다. 기계적으로 움직이는 부품이 없기 때문에 파일을 읽거나 프로그램을 실행하는 속도가 훨씬 빠르다.

그렇다면 USB 메모리와 SD카드는 어떻게 데이터를 저장할까? 이들 역시 기본적으로 SSD와 같은 낸드 플래시 메모리를 사용한다. 제품의 크기와 구조, 컨트롤러 성능에는 차이가 있지만 전기적 상태를 이용해 데이터를 저장한다는 기본 원리는 비슷하다.

저장장치에는 데이터를 실제로 기록하는 공간만 있는 것이 아니다. SSD에는 컨트롤러라는 중요한 부품이 존재한다. 컨트롤러는 어떤 데이터를 어느 메모리 셀에 저장할지 결정하고, 데이터를 읽거나 삭제하는 작업을 관리한다. 또한 특정 셀만 지나치게 많이 사용되지 않도록 저장 위치를 분산시키는 웨어 레벨링이라는 기능도 수행한다.

이 기능이 필요한 이유는 낸드 플래시 메모리의 셀에는 데이터를 쓰고 지울 수 있는 횟수에 한계가 있기 때문이다. 한 셀에만 반복적으로 데이터를 기록하면 그 부분이 빠르게 마모될 수 있다. 따라서 SSD 컨트롤러는 여러 셀을 골고루 사용하면서 전체 저장장치의 수명을 늘리도록 관리한다.

파일을 삭제할 때도 흥미로운 일이 일어난다. 일반적으로 컴퓨터에서 파일을 삭제했다고 해서 저장장치 내부의 데이터가 즉시 완전히 사라지는 것은 아니다. 운영체제는 우선 해당 데이터가 있던 공간을 ‘다시 사용해도 되는 공간’으로 표시한다. 이후 새로운 데이터가 그 위치에 기록되면서 기존 정보가 덮어쓰여질 수 있다. 그래서 조건에 따라 삭제한 파일을 복구 프로그램으로 되살릴 수 있는 것이다.

다만 SSD에서는 TRIM이라는 기능이 사용되기 때문에 HDD와 상황이 조금 다를 수 있다. 운영체제가 SSD에 더 이상 필요하지 않은 데이터 영역을 알려주면 SSD는 해당 공간을 미리 정리해 새로운 데이터를 빠르게 기록할 수 있도록 준비한다. 이 과정 때문에 SSD에서는 삭제한 파일의 복구가 HDD보다 어려운 경우가 많다.

저장 용량을 나타내는 단위도 이러한 데이터 구조와 관련이 있다. 데이터의 가장 작은 기본 단위를 비트(bit)라고 하며 하나의 비트는 0 또는 1을 표현한다. 8개의 비트가 모이면 1바이트(Byte)가 되고, 더 큰 단위로 KB, MB, GB, TB 등이 사용된다. 우리가 흔히 사용하는 1TB 저장장치에는 상상하기 어려울 정도로 많은 0과 1의 정보가 기록되어 있는 셈이다.

컴퓨터의 저장장치는 겉으로 보면 단순히 파일을 넣어두는 공간처럼 보인다. 하지만 내부에서는 자기장의 방향이나 전자의 양처럼 매우 작은 물리적 상태를 이용해 데이터를 표현하고 있다. HDD는 자기 상태를 이용하고 SSD와 USB 메모리, SD카드는 반도체 셀의 전기적 상태를 이용한다는 차이가 있지만 결국 핵심 원리는 같다.

우리가 저장한 사진 한 장, 문서 한 줄, 게임 하나도 저장장치 내부에서는 거대한 0과 1의 조합으로 존재한다. 그리고 운영체제와 저장장치의 컨트롤러가 이 데이터를 빠르게 기록하고 필요한 순간 정확하게 찾아내면서 우리가 익숙한 파일의 형태로 보여준다. 평소에는 단순한 ‘저장’이라는 버튼 하나로 끝나는 작업이지만 그 뒤에서는 반도체와 전기 신호, 자기 기술이 정교하게 움직이고 있는 것이다. 저장장치는 결국 디지털 세계의 기억을 보관하는 컴퓨터의 거대한 기억 창고라고 할 수 있다.

ogi080124

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다