HDD
앞으로의 대세는 SSD ( Solid State Drive, Solid State Disk )
되겠지만...
현재 그리고 앞으로 상당기간 HDD(하드디스크)가 PC에 있어서 메인 저장매체로의 자리는 흔들리지 않을것입니다.

Intel의 G3 출시를 앞두 시점에서
SSD의 가격이 계속해서 낮아지고 있지만...

개인적인 생각으로 80GB 정도의 SSD가 10만원대 초반이 되는 시점이 오지 않고서는 아직 가격이라는 장벽에 가로막혀 일반사용자에게 어필하기는
힘들다고 생각합니다.

SSD의 성능적인 매력이 충분하다는 판단이라도 HDD를 사용하여도 큰 불편함이 없기에
업그레이드 품목 정도로 생각되는 것이 현실이고, 100만원 안쪽에서 본체와 모니터를 구입하려는
사용자에게는
선뜻 선택하기 힘든 구성품이라고 생각합니다.

HDD에 관한 글을 생각했는데 또 잡설이 길어졌습니다. ^^ 
웹서핑 도중 데이터 복구 사이트인 오마이데이터(www.ohmydata.com) 사이트에
HDD사용중 문제점과 해결방법에 관한 좋은 정보가 있더군요.

그런데 해결방법에 HDD 부품에 관한 용어가 많이 나오는 관계로 HDD의 구조와 구동 절차에 대한
내용부터 올리도록 하겠습니다.


하드디스크의 구조


HDD의 과거와 현재는 그 용량이 10 MB에서 100 GB 이상으로 1,000 배 이상 늘었고 제작 및 전송
기술의 발전으로 그 성능이 크게 향상되었으나 흥미롭게도 구조적으로는 크게 변한 것이 없습니다.

하드디스크 분해도

하드디스크의 내부는 외부와 차단된 진공의 내부공간에 데이터가 저장 되는
레코드형태의 플래터(Platter)와 플래터위를 쉴새 없이 움직이는 바늘모양의 헤드, 헤드와 연결되어
있는 "센터럴 암(central arm)"로 구성되어 있습니다.
하드디스크는 이 상태에서는 데이터를 기록할 수 없는데, 초기화(Formatting)를 통하여 정보를
저장할 수 있는 무형의 구조를 형성해 주어야 합니다.



용어 설명


Hard Disk Drive 
'Hard Disk Drive'란 용어는 이 드라이브가 플로피(floppy, 나풀거리는) 디스크와 달리
금속판의 딱딱한(hard) disk를 사용하기 때문에 붙여진 이름입니다. 
플래터의 지름은 일반 PC용이 보통 3.5"(실제 지름은 3.75")이며 이보다 더 큰 것(5.25")과 작은 것(2")도 있다. 3.5" HDD의 경우, 플래터 표면의 실제로 정보를 저장하는 공간은 바깥쪽부터 1"(약 25 mm)까지이며 그 안쪽은 플래터를 스핀들에 고정하기 위하여 사용합니다. 각 플래터의 중심부에는 여러 개의 구멍내어 스핀들과 연결합니다.

HDD Platter , 하드디스크 플래터
플래터 (platter)
비자성체인 비금속(알루미늄) 원판(disk) 표면에 자성체인
산화금속 막을 양면에 도장(coating)한 것입니다.

이 산화금속 막을 논리적으로 나누고(partitioning)
위치를 지정(formatting)하면 정보를 저장할 수 있게 됩니다.



하드디스크 스핀들, HDD Spindle
스핀들(Spindle)

플래터가 회전할 수 있도록 모터와 직접 연결된 축입니다. 스핀들은 4 개의 볼트와 1.25" 크기의 고정용 비 금속판을 사용하여, 플래터를 축에 단단히 고정합니다. 스핀들에 여러 장의 플래터를 설치할 때는 플래터 사이에 지름 1.25" 두께 1/8"의 스페이서(spacer)를 넣어 함께 고정합니다. 플래터를 일정한 속도로 회전시키는 장치인 모터가 있고, HDD용 모터는 스핀들에 직접 연결되어 있기 때문에 '스핀들 모터'라고도 부릅니다.


HDD Head, 하드디스크 헤드
헤드(Head)

플래터 표면에 코팅된 자성체를 자화/소거하여 정보를
저장/삭제(write /delete)하거나 저장된 정보를 읽는(read) 장치입니다. 일반적으로 헤드의 수는 플래터 수의 두 배입니다.
한 장의 플래터는 두 개의 면이 있으므로
각 면에 하나씩 2 개의 헤드가 필요한 것입니다.
따라서 3 장의 플래터로 구성한 HDD에는 모두 6 개의
헤드가 있습니다.


HDD 구동장치 (Actuator)
헤드구동 장치 (Actuator)

액츄 에이터는 헤드를 움직이는 장치입니다.
HDD 회로 기판으로부터 제어 신호를 받으면 actuator용 구동장치는 헤드가 부착된 암(arm)을 지정한 위치까지 이동시킵니다.
헤드를 움직이는 구동장치는
linear motor(리니어 모터, 선형 모터)를 사용하는데,
이 모터는 수평으로 선 운동을 합니다. 헤드가 부착된 암과 그 반대편의 코일이 감긴 모터 부분은
서로 연결되어 있으며 그 중앙에는 축이 있어 각기 반대 방향으로 움직입니다. 선형 모터가 왼쪽으로 움직이면 헤드는 오른쪽으로 이동합니다.


카트리지 (Cartridge)
카트리지는 플래터, 스핀들 모터, 헤드, 액츄 에이터를 밀봉하는 알루미늄 주물(diecast) 케이스를
말합니다. 카트리지는 내부의 정밀 부품(특히 헤드와 플래터)에 먼지나 기타 이물질이 들어가지
않도록 완전히 밀폐하며 위 판과 아래 판 사이에 고무줄을 넣어 진동을 방지합니다.
카트리지 재질로 알루미늄을 사용하는 이유는 가공하기 쉽고
모터에서 발생한 열을 빠르게 전도하기 때문입니다.


회로기판(PCB)

HDD 하부에는 회로기판(PCB)이 달려있습니다.
PCB에는 전원용 커넥터, 신호용 커넥터, 점퍼용 핀(IDE의 single/master/slave 선택 또는 SCSI의 ID 선택에 사용), BIOS, control chip, buffer memory, LED 등 많은 부품들이 부착되어 있습니다. 회로기판은
방열, 수리따위의 목적으로 노출한 형태가 많아서 동작 중에 실수로 금속 물체를 떨어뜨리거나 물을 쏟으면 고장 나기 쉽습니다.


HDD 실린더, 트랙, 섹터
실린더 (Cyinder)

다수개의 플래터의 트랙을 수직적으로 관통하는
3차원적인 스택을 말합니다.
하드용량=(헤드수) * (실린더수) * (섹터수) * (섹터당 기록용량) 보통 섹터당 512KB 동심원을 동일한 각도록 나누어 데이터를 기록할 경우 내부 섹터와 외부 섹터의 실제 기록 밀도는 상당한 차이가 있습니다.
즉, 안 쪽 실린더에는 길이에 비해 기록 밀도가 매우 높습니다. 따라서 기록 밀도가 높은 곳은 그만큼 데이터 안정에 문제가 있을수 있습니다.
이런 이유 때문에 모든 섹터가 같은 길이를 갖도록 데이터를 기록하는 방식을 사용하는 것이 일반적인 추세입니다. 이를 위해 하드디스크의 헤드 위치에 관한 정보를 읽을 수 있는 별도의 헤드를 하나 더 사용하게 됩니다.


트랙,섹터 (Track, Sector)
플로피 디스크와 하드디스크 기록 단위의 하나로서 자기 매체에 늘어선 동심원으로 구획된 하나하나를 트랙이라 부르고 그 트랙들은 다시 섹터로 나뉩니다.


클러스터 (Cluster)

섹터의 그룹이며 도스에 의해 인식되는
최소 기억단위입니다. 보통 클러스터는 2의 누승개의 섹터를 갖고 있다. 작게는 16부터 많게는 64 혹은 128개 이상의 섹터를 하나의 클러스터로 사용합니다.

그렇다면 왜 섹터를 클러스터로 묶는가?라는 의문에
디스크에 512바이트의 섹터 단위로 기록해도 아무런
문제가 없습니다. 사실 섹터 단위로 기록하면 데이터를 촘촘히 기록할 수 있기 대문에 기록 밀도는 훨씬 높아집니다.
그러나 1024실린더, 16헤드. 63섹터의 특성을 갖는
하드디스크를 생각해보면 섹터 단위로 기록을 한다면 자그마치 1,032,192개의 어드레스가 필요합니다.
하드디스크에 기록되는 파일은 대부분 512바이트 보다 작지않습니다. 따라서 512바이트 단위를 초과할 때 마다 연결된 데이터가 위치한 포인터가 필요하게 됩니다. 이것은 바로 하나의 파일을 읽기 위해 수십 혹은 수 천개의 포인터를 계산하여 읽어들여야 한다는 것입니다.
정리하자면 16섹터/cluster 인 하드디스크에서는 데이터를 8KB로 기록을하고
그 이하인 파일도 8KB를 차지합니다.

하드디스크의 구동절차


 1. +5VDC, +12VDC 전원 공급 ( power 스위치 on )
 2. 하드디스크 자체에서 공급 전원이 이상이 없는가 확인합니다.
      규정치 보다 높거나 낮은 상태 아니면 불안정한 공급 상태 등을 확인하여 이상이 있을 경우
      동작을 차단합니다.
 3. 하드디스크 자체 진단 power 를 포함한 불안정한 상태가 없는가 확인. 확인 후 이상이 없으면
      전체를  reset 시킵니다
 4. spindle motor start 명령을 보냅니다.
 5. spindle motor가 회전을 시작하고 약 1,000 rpm 정도 도달하면 head가 flying을  시작합니다.
      수초 이내에 정상 rpm에 도달하며 head는 정상 flying height를 유지합니다.
 6. 정상 speed를 확인한 spindle motor control회로에서 drive control 회로로  
      spindle ready신호를 보냅니다.
 7. head가 landing zone에서 disk의 out쪽으로 움직이며 position calibration 및 
      필요한 data( servo, u-Code, special disk info. ) 를   pick up 합니다.
 8. head를 track 0로 옮기고 head가 track 0에 있음을 control부에 알립니다. 
 9. head가 움직이지 않고 seek이 완료 되었음 ( seek complete )을 control 부에 알립니다.
10. 모든것이 완료되어 정보를 저장하고 주고받을 수 있는 Ready 상태가 됩니다

                                              하드디스크의 작동 동영상입니다.


 위 순서로 동작을 하게 되며 최근 출시된 HDD의 경우 약 5-7초, full height 라도 10초 이내에 끝나는 동작이며, 이 동작을 손을 하드디스크에 대고 유심히 살펴보면 정상 동작 여부를 알 수 있습니다.




Posted by Rapter
,