티스토리 뷰

HDD의 구성 요소

일반인이 알면 좋을 만한 용어로는 속도에 직결된 인터페이스, 버퍼 용량, RPM 정도 알면 좋다. 그래도 HDD의 내부가 어떻게 구성되어 있는지 대충이라도 알아야 왜 인터페이스, 버퍼 용량, RPM으로 속도가 좌우되는지를 이해할 수 있으므로 대략적인 구성 요소를 먼저 보고 스펙을 확인하는 것이 좋다. 그 외에 HDD 제원 문서에는 평균 탐색 시간이라든지 버스트 전송 속도라든지 이런 게 추가로 적혀 있는데, HDD 업체 수가 몇 안 돼서 그런 것들은 다대동소이하므로 크게 차이가 벌어지는 것들만 살펴보면 된다.

파워 커넥터(Power Connector)

HDD를 동작하기 위해 전원을 공급받기 위한 커넥터이다. 전원 커넥터에 대한 자세한 정보는 단자/전원이다. 과거 PATA 시절에는 지금도 파워서플라이에 주렁주렁 달린 IDE 4핀 또는 몰렉스 커넥터라고도 부르는 AMP MATE-N-LOK 파워 커넥터를 이용했으나, SATA부터 ㄱ자형의 15핀으로 변경되었다.

데이터 커넥터(Data Connector)

데이터를 교환하기 위한 연결 통로로, 데이터 입출력의 물리적인 규격이기도 한다. 데이터 커넥터에 대한 자세한 정보는 단자/데이터 입출력을 보면 알 수 있다. PATA 규격에는 20x2 배열의 길쭉한 40핀 단자를 이용했으나, SATA 규격부터 ㄱ자형의 7핀으로 변경되었다.

인터페이스(Interface)

데이터를 교환하기 위한 논리적인 규격으로, 과거에는 PATA(서버는 SCSI)를 이용했으나 지금은 대부분이 SATA(서버는 SAS)를 이용한다. 따라서 HDD가 SATA Revisison 2.0인가 SATA Revision 3.0인가 정도만 확인하면 된다. 초기 SATA 규격이 최대 1.5Gbps 전송 속도까지 지원하고 세대가 올라가면 이전 세대의 2배가 된다. 따라서 SATA Revision 2.0의 최대 전송 속도는 3.0 Gbps, SATA Revision 3.0의 최대 전송 속도는 6.0 Gbps이다. 2004년 인텔 915 칩셋이 탑재된 메인보드 중에 사우스브리지가 ICH6R이 탑재된 제품부터 AHCI(Advanced Host Controller Interface)를 지원하여 HDD도 USB 메모리처럼 핫 플러깅 기능을 사용할 수 있게 되었다. 2009년 P55 칩셋이 탑재된 메인보드부터 기본적으로 지원한다.

물론 고선은 SSD가 아닌 한 실제로 저 속도로 읽고 쓰지는 않는다. 인터페이스 규격은 어디까지나 이론적인 최대 전송 속도 규격일 뿐, 읽기 및 쓰기 작업시 무조건 인터페이스 규격대로 뽑는 것을 보장해주지 않는다는 뜻이다. 실제로 SATA Revision 3.0 지원 HDD의 대부분은 SATA Revision 2.0에 해당하는 최대 속도조차 도달하지 못한다. 정작 진짜 고성능 SSD는 SATA 따위 진작에 버리고 PCle 슬롯에 장착하는 카드 타입의 인터페이스나 M.2라는 커넥터 규격에 PCle를 이용한 NVMe 인터페이스로 갈아탔다.

점퍼(Jumper)

4x2 배열의 8핀으로 구성된 단자로, 2개의 홈이 파인 조그마한 점퍼들의 배열을 통해 마스터(master), 슬레이브(slave), 케이블 셀렉트(CS)로 지정한다. 여러 대의 HDD를 장착해서 사용하려면 반드시 이 작업을 거쳐야 했지만, SATA규격부터 점퍼 없어도 자동으로 인식해서 여러 대의 HDD 사용이 편리해졌다. 점퍼 지정하는 것도 귀찮은 일인데 제조 삼다 점퍼 배열이 달라서 헷갈리는 사람들이 많았다. 이거 때문에 HDD 인식이 안 되어서 부팅도 못 하고 끙끙 앓은 조립 초보자들이 부지기수였을 정도이다. 다행히 SATA 규격부터 점퍼가 필요 없게 되어 초보자들도 헤매지 않고 쉽게 세팅할 수 있게 되었다.

버퍼(Buffer)

HDD가 원체 느린 장치이기에 속도 차이로 인한 병목 현상을 온화하기 위해 인터페이스와 HDD 사이에 있는 일종의 완충용 메모리로, DDR 계열의 SDRAM이 사용된다. SSD에도 초저가 아닌 이상 캐시 겸 버퍼 기능이 있는 여러 DDR 계열 SDRAM이 붙어 있으며,  CPU와 메인 메모리 사이에 캐시 메모리가 있는 것과 비슷해보이지만 캐시와 버퍼는 엄연히 다른 역할과 목적을 지니고 있다.

플래터(Platter)

데이터가 실제로 기록되는 원판으로, 하나의 플래터당 두 개의 헤드(앞면과 뒷면)가 붙는다. 간혹 플래터의 한 면만 쓰는 때도 있다. 시게이트에서 나오는 슬림형 HDD는 플래터가 한 장이고 보통은 한 HDD에 2장에서 3장 들어간다. 플래터의 숫자가 많을수록 동시에 읽고 쓸 수 있는 헤드의 숫자가 늘어나므로 연속 읽기에는 약간 강해질 수 있지만 액추에이터의 부담이 늘어나므로 탐색 성능에서는 손해를 본다. 다만 플래터의 개수가 줄어든 만큼 플래터의 집적도가 올라가는 데에서 생기는 성능 상 이익도 있다. 플래터 재료 자체는 3.5인치는 알루미늄 합금, 2.5인치는 유리를 사용하며 표면은 매우 매끈매끈하다. 우리가 사용하는 거울 보다도 훨씬 매끈한데 어느 정도 나면 플래터의 크기를 인천공항 만하게 확대해도 편평도가 활주로 수준이다. 플래터의 표면에 입히는 자성체는 예전에는 산화철을 사용했지만, 요즘엔 픽시 더스트라 불리는 루비듐 계열 합금을 사용한다. 플래터에는 알루미늄이 더욱 많이 쓰이지만 HDD 파기 시 알루미늄이겠거니 하고 무턱대고 펜치로 구부릴 때 유리 플래터라면 난감한 사태가 일어날 수 있다. 파기 시엔 실외에서 하자. HDD에 있는 플래터의 논리적인 단위로는 트랙, 섹터, 실린더가 있다. 줄여서 C/H/S 라고도 부른다. 옛날 바이오스(인텔 80486 시리즈 쓰던 시절)에는 위의 실린더/트랙/섹터 값이 HDD 라벨에 표기가 되어 있었고 컴퓨터에 HDD 단 이후 바이오스 Setup 화면에서 저 값을 일일이 써넣어야 했다. 그러나 그때도 이 C/H/S 값은 무의미했다. 상식으로 65536실린더, 255 헤드, 63 섹터를 가진 HDD가 있으리라고 보는가? 일단 255 헤드라는 의미는 프래터가 128개라는 소리, 즉 디스크 원판이 128개라는 건데, 종이를 그만큼 쌓아도 HDD 두께보다 두껍다. 저 말도 안 되는 숫자를 억지로 써넣어야 했던 이유는 바로 맨 끝에 잇는 섹터 수 때문이다. 실제 HDD는 벌써 한 실런더에 수천 섹터 이상을 담을 수 있는데 옛날 바이오스의 섹터 제한이 63까지였기 때문이다. 저 숫자가 유의미하던 시절은 AT 시절에 이미 끝났다. 요즘은 모든 섹터에 단순하게 0부터 순서대로 일련번호를 붙이는 LBA라는 간단한 해법이 있고 이게 나오면서 바이오스 입력 화면에 자동인식이라는 항목이 생겨서 이걸 누르면 알아서 잡아주게 되었다. 현재 HDD는 C가 수십만 이상, H가 2~10 정도(플래터 수 * 2)이고 S는 그때그때 다르다. 달기만 하고 재부팅하면 바이오스에서 알아서 자동을 세팅해 줄 정도로 발전하였다.

트랙(Track)

HDD의 플래터 표면에서 회전축을 중심으로 데이터가 기록되는 동심원이다. CD 가은 놈은 나선형 트랙을 사용하는데(그래서 CD의 트랙 수는 1개) 반해서 HDD는 여러 개의 트랙을 가지고 있다.

섹터(Sector)

트랙을 일정한 크기로 구분한 부분이다. 정보 기록의 단위이다. 아직도 수많은 교과서에서 섹터는 트랙을 일정한 '각도'로 분할한다고 적혀 있는데 이것은 플로피디스크나 레이저디스크 및 대략 1980년대 중반 정도까지 생산된 초창기 HDD에서나 쓰이던 방식이므로 심각한 오류이다. 현재 HDD는 가변 섹터 구조라서 바깥쪽의 트랙일수록 섹터 수가 많다. 데이터의 기록 밀도가 일정하다면 플래터의 바깥쪽으로 갈수록 반지름이 커져서 더욱 많은 데이터를 기록할 수 있다. 그 증거로 HDD 벤치마크 프로그램을 보면 전송률 그래프가 계단 모양으로 나타나는 것을 볼 수 있다. 계단 한 칸 떨어질 때마다 트랙 당 섹터 수가 한 단계 내려간 것이다. 하나의 섹터는 보통 512바이트를 기록할 수 있으나, 2010년대를 기점으로 대용량 HDD는 섹터당 4096바이트를 기록한다. 섹터는 HDD의 최소 기록 단위로, 이 안에는 파일을 단 1개만 저장할 수 있다. 512바이트짜리 섹터 하나에 10바이트짜리 아주 작은 텍스트 파일을 저장했는데 용량 남는다고 거기다 다른 파일을 담을 수는 없다는 뜻이다. 이렇게 되면 남은 502바이트는 그냥 버려진다. 파일이 섹터 용량을 넘을 때 그 넘어간 용량만큼 다른 섹터에 저장하고 마지막 부분까지 저장하고 용량이 남아도 그 부분은 그냥 버려진다. 윈도우의 파일 속성 창에서 볼 수 있는 디스크 활당 크기와 파일의 실제 크기가 차이 나는 이유이기도 한다.

실린더(Cylinder)

플래터가 여러 장일 때 서로 다른 면에 있는 동일 트랙들이 모임이다. 다른 풀이로는 R/W 헤드가 어느 한 시점에 동시에 접근하는 트랙들의 모임이기도 하다. 보통 이 수는 한 면의 트랙 수와 같다. 일반으로 HDD의 모든 헤드는 하나의 액추에이터에 묶여 동시에 움직이기에 실린더라는 용어를 사용하는 것이다.

RPM

속도에 있어서 중요한 지표이다. 이게 높은 HDD가 탐색에 걸리는 회전 시간이 빠르고 최대 읽기/쓰기 속도도 빨라진다. 데스크톱 HDD는 7200rpm(초당 120바퀴)이 많이 사용되고 웨스턴 디지털의 그린 제품군과 일부 블루 제품군은 이보다 낮은 회전수로 돌거나 가변 rpm을 사용하기도 한다. 노트북 컴퓨터용 2.5인치 HDD 대부분은 5400 rpm이고 노트북 컴퓨터용 7200 rpm HDD도 있지만 소음, 내충격성이나 전력 소비 문제로 자주 사용되지는 않는다. 서버용과 하이엔드 데스크톱 컴퓨터용 HDD는 10,000 rpm과 15,000 rpm도 있다. 이 쪽은 1000=1K로 줄여 10K, 15 Krpm이라고 쓰기도 한다. 고 rpm HDD는 3.5인치 HDD에 들어가는 플래터를 사용할 대 모터의 발열과 원심력을 감당하기 어렵기에 2.5인치 HDD에 들어가는 작은 크기의 플래터를 주로 사용한다. 고급 데스크톱 컴퓨터용 고 rpm HDD는 웨스턴 디지털의 랩터 시리즈가 유명했다. 랩터가 처음 나올 때만 해도 일반 7200 rpm HDD의 탐색 시간에 불만인 마니아들을 달래 줄 만한 물건이 아예 없었다. 엠트론의 32GB 1,000,000원짜리 SSD조차 랩터 초기 출시 몇 년 뒤에 일어난 일이고 그때는 기껏해야 DRAM에 배터리 연결해서 저장장치로 속이는, 그것도 DDR1 시대 물건이라 4GB가 최대 용량인 i-RAM 같은 물건밖에 없었으나 SSD가 빠르게 발전하면서 고성능 HDD의 성능과 가격을 뛰어넘기 시작했고 랩터 시리즈도 투명 껍데기를 장착한 랩터 X 150GB 모델과 고용량 모델이 출시되지만 SSD의 물결 앞에 결국 단종될 수밖에 없었고 그때나 지금이나 고용량 SSD는 가격이 비싸다. 1TB SSD는 랩터 시리즈가 완전히 단종되던 시절에는 개인용 컴퓨터 사용자가 접근하기 어려웠지만, 2015년 말이 되면서 300달러의 벽이 허물어지고 있다. 서버용 고 rpm HDD는 데스크톱 컴퓨터용 IDE/SATA 규격보다 안정성을 더 고려한 SCSI/SAS 방식으로 출시되고 메인보드에 컨트롤러가 내장되는 IDE/SATA와는 달리 별도의 컨트롤러가 필요하다. 속도 자체는 테스크톱 컴퓨터용과 큰 차이가 없기에 HDD만 서버용으로 교체한다고 해서 효과를 보기는 어렵다. 컴퓨터 속도를 빠르게 하는 저렴한 방법은 RAM의 용량을 확인한 다음 작업에 따라서 8GB에서 16GB 정도로 증설하는 것이고 고 rpm HDD는 랜덤 엑서스 성능이 저 rpm HDD에 비하면 좋기에 과거에는 체감 효과가 있었을지 몰라도 현재는 SSD를 다는 것이 더 좋다.

탐색 시간(Seek Time)

헤드와 플래터가 데이터를 읽고 쓰려는 트랙(정확히는 실린더)에 정확히 정렬하는 데까지 걸리는 시간을 가리킨다. 플래터 회전 시간은 5400rpm으로 회전한다면 최대 10ms 까지도 소요될 수 있지만 그렇다고 어쩔 수도 없으니 보통 무시된다. HDD의 헤드는 네오디뮴 자석으로 구동되는 보이스 코일 액추에이터로 움직이는데, 쉽게 말해 스피커를 구동하게 하는 그 부품을 좀 개량한 것이다. HDD에서 가장 느린 부품이 이 액추에이터다. 헤드를 움직이는 것은 곧 헤드가 달린 팔을 물리적으로 움직이는 것이니 아무리 빨라도 수 kHz 정도가 한계일 수밖에 없다. 시간으로 환산하면 1ms에서 10ms 정도로, 평균으로 따지면 최고속 HDD는 최저 5ms 정도가 나온다. 이게 요즘 나오는 최신식 HDD의 제원이다. 그나마 액추에이터로 헤드를 구동하는 장치 중에서는 HDD가 넘사벽으로 빠른 거지만(CD의 액추에이터가 100ms 내외의 아주 저속으로 움직인다.) 메모리 반도체의 작동 속도가 최소 마이크로초~나노초 단위라는 걸 생각해 보자. 참고로 CPU는 피코초 단위로 동작한다.

댓글