하드디스크(HDD)의 구조와 용량 계산법
A. 메모리와 기억장치의 용량은 공통적으로 두가지 표기 방법이 있습니다. 하나는 2진수 표기법이며 다른 한가지는 10진수 표기법입니다.
기억장치의 File system은 2진수로, Disk Drive의 용량은 10진수로 표기합니다. (확인해 본 바 삼성, 퀀텀, 시게이트, 맥스터 모두 동일하게 표기하며 업체 표준입니다.) 따라서 10진수로 표기하는 Disk Drives의 용량은 다음과 같습니다.
1 MB = 1,000,000 bytes
이것을 2 진수로 표기한다다면 1,048,576 bytes가 되어 용량에 차이가 있게 됩니다. PC ROM BIOS에서 HDD가 DETECT될때 용량이 제품 MANUAL에 나와 있는것 보다 적은 것은 위의 표기 방법중에 어떤 것을 BIOS가 적용하는지에 따라 맞을 수도 있고, 틀릴 수도 있게 되는 것입니다.
대부분 CMOS에서 10진수로 표기하여 그 용량의 차이가 없습니다만, Fdisk나 Windows에서는 2진수로 용량을 표시하기 때문에 HDD에 표기된 용량(10진수)보다 더 작게 보여지는 것입니다. Fdisk 화면 가운데 ( 1MB = 1048576 바이트 )라고 쓰여진 것을 확인할 수 있습니다.
A. 실린더수 * 헤드수 * 섹터수 * 512 = 전체용량 (2진수 표기) 예를 들어 실린더가 2112, 헤드가 16개, 섹터가 63개인 경우 2112 * 16 * 63 * 512 = 1,089,994,752 bytes 인데 10진수로 표기하면 1,039.5MB가 되어 용량이 적어 보이게 됩니다.
= Cylinder × Head × Sector × 512
= LBA × 512 ( 512는 한 Sector당 Byte수 이며, LBA값은 제품Label에 기록되어 있습니다.)
8.4GB가 넘는 제품은 CHS값으로 용량을 인식하지 않습니다. 이는 IDE가 지원하는 최대용량이 8.4GB(C:16368, H:16, S:63)으로 이 이상의 값을 계산하지 못하기 때문입니다.
8.4GB가 넘는 제품은 CHS값으로 용량을 인식하지 않습니다. 이는 IDE가 지원하는 최대용량이 8.4GB(C:16368, H:16, S:63)으로 이 이상의 값을 계산하지 못하기 때문입니다.
8.4GB가 넘는 제품은 LBA값으로 용량을 계산하게 되는데, 대부분 LBA값을 모델 Label에 표기하고 있습니다. (HDD용량 = LBA값 × 512) (퀀텀및 맥스터 HDD는 라벨에 LBA값을 표기하지 않으며, 이 경우는 해당 HDD 제조업체로 문의하거나 홈페이지를 통해 확인이 가능합니다.)
일반적으로 HDD를 사 보면, 실제 표기된 용량과 포멧 후에 사용할 수 있는 용량에 차이가 있다는 것을 알 수 있습니다.
"간 혹, 다른 HDD를 준 것이 아니냐..?" 라는 의심을 하는 사람들이 있습니다.
하지만, 이것은 표기 방법의 문제라고 할까요? 우리가 실제 사용하는 환경에서의 용량 표기와 HDD제조 업체에서 표기하는 방식의 차이에서 발생하는 문제 입니다.
우리가 사용하는 환경에서는 1KByte는 1024Bytes로 계산을 합니다. 하지만, HDD 제조 업체에서는 1000Bytes를 1KByte로 계산을 하고 있습니다. 여기에서 차이가 생기게 됩니다.
실제 HDD에서 100GBytes라고 표기가 되어 있다면, 이것은 1KByte을 1000Byts로 계산을 해서 나온 값입니다. 따라서, 이 값을 1024Bytes로 환산을 해 줘야 하는 것입니다.
간단한 계산 방법으로
실제 용량 = 표기용량 * 0.9313 을 하면 쉽게 계산이 됩니다.
120G * 0.9313 = 111.76GBytes
200G * 0.9313 = 186.26GBytes
500G * 0.9313 = 465.65GBytes 라는 계산이 나옵니다.