pc사랑과 함께 배우는 이달의 IT 용어 - 필수 장치로 자리 잡은 지 30년 그래도 아리송한 하드디스크 용어들
플래터(Platter)
플래터는 하드디스크의 주 부품으로 데이터를 담는다. 생김새는 원반형이며 알루미늄이나 압축유리로 만들어진다. 이 플래터에 자성입자를 고르게 입힌 뒤, 그 위에서 헤드가 자기배열을 변경해 데이터를 기록한다. 초기에는 기록 층에 금속 산화물을 입혔지만, 지금은 자성 합금을 얇게 입혀 더 많은 데이터를 담는다.
스핀들 모터(Spindle Motor)가 플래터 중심에서 회전을 시키는데, 속도가 빠를수록 데이터 처리도 빠르다. 플래터는 양쪽 면을 전부 써서, 플래터 한 장에 500GB를 저장한다는 것은 두 면을 다 합친 양이다. 하드디스크 저장량은 플래터의 저장능력과 개수에 영향을 받는다. 요즘 나오는 하드디스크의 플래터는 보통 한 장이다. 이유인 즉 플래터가 두 장이면 헤드도 양 쪽 두 개씩 모두 네 개가 필요해 제조비용도 같이 증가하기 때문. 거기에 돈도 돈이지만 소음과 발열, 전련소모가 심한 이유도 크다.
플래터에 관해 빼놓을 수 없는 건 rpm(revolutions per minute)이 있다. 이 수치가 높을수록 플래터가 빨리 회전한다. 또한 헤드가 자리를 옮겨가는 시간도 단축되어 데이터 처리가 빠르다. 1분당 플래터가 몇 번 회전 하냐에 따라 rpm 수치가 다르며, 현재 대부분 7200rpm으로 초당 120번 회전한다. 그 이상으로 회전도 하지만 눈 돌아가게 비싸서 대중적으로 쓰진 않는다.
헤드(head)
헤드는 레코드판 위 바늘처럼 플래터를 읽는다. 플래터 사이에는 약간의 틈이 있는데 이 공간이 헤드를 위한 것이며, 드라이브에서 데이터를 읽고 쓰는 헤드는 전자석과 같다. 플래터는 데이터를 저장하기 전 철 성분이 흩어져 있는데, 헤드가 데이터를 쓰기 위해 여기에 자성을 보낸다. 이를 받은 철 성분은 양극과 음극으로 나뉘어 조합을 만든다. 이 조합이 무엇이냐에 따라 데이터는 0과 1중 하나가 된다.
하드디스크 저장량은 플래터 도금 상태에 달렸지만, 헤드가 얼마나 정교히 자성을 내뿜느냐에 따라 미치는 영향도 크다. 도금 상태가 불규칙하고 자성 폭이 넓으면 데이터 기록 면적도 넓다. 도금상태가 깨끗하고 자성 폭이 좁으면, 기록 면적이 좁아 더 많은 데이터를 저장할 수 있다. 또한 헤드는 직접 플래터와 접촉하지 않고 표면에 살짝 떠있는 상태다. 플래터 표면과 헤드 사이 공간은 제품에 따라 마이크로미터 단위부터 나노미터 단위까지 쓰인다. 이런 이유로 하드디스크가 작동하는 도중, 외부 충격이 가해지거나 전원이 갑자기 꺼지면 고장 나기도 한다. 안전한 곳으로 이동하지 못한 헤드가 플래터 표면을 긁어 고장이 난 것이다. 요새는 다양한 안전장치로 손상을 최소화하는 기술들이 접목된 제품들이 흔하다.
클러스터(Cluster)
플래터는 지름이 3.5인치 아래지만, 어마어마한 크기의 저장장치다. 이 넓은 공간을 나누기 위해 트랙(Track)과 섹터(Sector)가 존재한다. 눈에 보이지는 않지만 플래터에는 수많은 트랙과 섹터가 새겨져 있다. 트랙은 육상트랙처럼 플래터를 중심으로 새겨진 원이고 섹터는 이를 가로지르고 있다. 섹터는 하나가 512바이트로, 최소 저장단위다.
트랙과 섹터가 물리적인 단위라면, 클러스터는 실제 저장 단위다. 최소 저장단위인 섹터가 있어도 클러스터를 단위로 쓰는 것은 512바이트라는 공간이 너무 좁기 때문. 현재 아무리 작은 파일도 킬로바이트부터 시작하니, 섹터를 독립적으로 쓰기엔 역부족이기 때문이다. 그렇기에 몇 개씩 묶어, 클러스터로 이용한다. 만약 클러스터가 10킬로바이트라 치면, 여기에 15킬로바이트 파일을 저장 시 1번 클러스터에 10킬로바이트가 들어간다. 나머지 5킬로바이트는 2번 클러스터에 저장 된다. 문제는 5킬로바이트만 저장한 클러스터는 남은 공간에 다른 파일을 담지 못한다다는 것. 이런 이유로 클러스터를 곧 최소 저장단위라고 말한다.
여러 개의 클러스터를 사용할 때, 반드시 이들이 연결되어 있지는 않다. 여기저기 흩어져 있어도 그 위치와 순서를 기록한 파일배치표에 의해 관리되기 때문이다.
파일배치표
데이터 주소를 적어놓은 파일배치표는, 관리 시스템으로 FAT(File Allocation Table)과 NTFS(New Technology File System) 두 가지가 있다. 새로운 파일을 하드디스크에 저장하면 그 파일은 적어도 하나 또는 그 이상의 클러스터에 저장된다. 여러 클러스터에 저장되면 여기저기 흩어지는데 이를 관리한다.
윈도우 XP 이하에서 쓰는 FAT는 서로 다른 파일은 클러스터 하나에 집어넣지 못하는 고정 클러스터 시스템이다. 운영체제는 새로 저장된 파일에 대해 각 클러스터 위치와 순서를 기록한 FAT 엔트리를 만든다. 파일을 읽어온다는 것은, 디스크에서 먼저 디렉터리 등록정보와 FAT를 참조해 시작클러스터와 마지막 클러스터 내용을 읽는 것이다. 윈도우 95때부터 FAT32가 등장했고, 최대 2TB 하드디스크까지 알아챈다. 요새 3TB가 나와도 구형 시스템에서는 알아채지 못해 무용지물인 이유가 이 때문이다.
NTFS는 윈도우 2000과 NT 같은 서버용 운영체제에서 쓰는 시스템으로, 윈도우 시스템 복구가 쉽고 접속권한 설정 같은 이용자 관리 단위가 간단하다. 동적 클러스터라 FAT처럼 빈 공간을 남겨두지 않고 다른 파일을 같이 집어넣는다. 관리할 수 있는 하드디스크 용량은 이론적으론 무제한이지만, 실제로는 FAT32와 같은 2TB다. NTFS는 드라이브와 폴더, 파일 압축이 간단하게 실행되며, 파일이름 길이도 무제한으로 등록된다.
ATA(AT Attachment)
ATA 인터페이스를 이해하려면 IDE(Integrated Drive Electronics)부터 알아야 한다. CPU가 하드디스크에서 데이터를 가져오려고 하면, 헤드는 데이터를 읽고 메모리로 보낸다. 이처럼 하드디스크와 다른 부품들이 통신하려면 서로 간 지킬 규약, 즉 프로토콜(Protocol)이 필요했고 이 규격을 IDE라 한다. IDE는 40핀의 병렬 인터페이스 규격으로, 최대 504메가바이트 하드디스크 두 개까지 메인보드에 연결할 수 있다. 이 속도를 규정한 것이 ATA다. 이 턱없이 모자란 용량을 해결하기 위해 EIDE가(Enhanced IDE) 나왔었다. EIDE는 기가바이트급 하드디스크를 4개까지 연결하며 이를 ‘ATA-2’ 또는 ‘Fast ATA’라 부른다.
하드디스크 전송 규약은 ATA 133에서 더 발전하지 못하고 멈췄었는데, 병렬 방식의 한계였다. 40개 회선은 맞닿아있어 노이즈가 생기기 일쑤였고, 병렬식은 신호 간 간섭이 생기기 쉬웠다. 어느 신호 하나만 지체되거나 손실돼도 처음부터 다시 보내야 했다. 이 문제를 해결하려고 ATA66이 나왔고 회선은 80개까지 늘었었다. 이렇게 ATA 133까지 이어졌지만 결국 노이즈를 완전히 막지 못했다. ATA 133은 ATA 100과 별다른 차이점이 없다는 혹평도 들었다.
이 병렬 ATA 한계를 깨기 위해 나온 게 직렬 ATA(Serial AT Attachment)다. 회선은 6개로 줄었지만 직렬로 자료를 주고받아, 병렬 방식처럼 데이터 손실에 따른 지연은 생기지 않았다. 병렬 ATA가 신호선상에서 다 같이 출발해 똑같이 도착해야 하는데 간섭 때문에 성공률이 낮았다면, 직렬 ATA는 회선 하나로 계속 전송해 성공률이 훨씬 높다.
1세대 직렬 ATA는 전송 클록이 1.5GHz로 병렬 ATA에 비해 30배 높았고 전송속도는 초당 150MB였다. 2세대는 초당 300MB로 더 빨라졌으며 현재 대세인 3세대(SATA3)는 초당 600MB를 전송한다.