디스크의 종류와 용어 3 장 - '메가, 기가, 테라, 페타...' 저장 용량의 단위 [이동 완료]
이동 완료 2010. 8. 22. 08:00 |이곳은 백업 블로그 입니다. 현재 캐플이 활동 중인 블로그는 CAppleBlog.co.kr 입니다. 최신 정보들은 새로운 블로그에서 확인해 보세요. ^^
- 이곳은 기존 블로그들의 글을 한군데로 모아 놓은 백업 블로그입니다.
- 현재 링크는 대부분 올바르지 않으며 이러한 링크들은 모두 cappleblog.co.kr 로 이동합니다. (※ 링크 주의)
- 블로그와 커뮤니티는 서로 다른 공간입니다.(로그인을 따로 해야합니다.)
- 저는 윈티티(WinTT)이자 신비(ShinB)이며 캐플(CApple)입니다. 편한대로 불러주세요.
이 자료는 신규 블로그에서 새롭게 제공되고 있습니다. 페이지가 자동으로 이동하지 않는 분들은 아래의 링크를 클릭하세요.
저장 장치는 기본적인 용량의 단위로 바이트(Byte)를 사용합니다.
하지만 바이트는 굉장히 작은 단위이기 때문에 큰 용량의 파일이나 저장 장치의 용량을 바이트만으로 표현하기엔 부적절 합니다. 그래서 컴퓨터에서도 다른 대부분의 단위가 그러하듯 SI prefix 라는 표준 단위 접두어를 붙임으로써 큰 단위의 수를 보다 간결하게 표현하고 있습니다. 이러한 SI prefix 에서 사용하는 단위는 보통 1,000(103) 배가 기준이 됩니다. 우리가 흔히 길이의 표준 단위인 미터로만 표현하기엔 너무 긴 길이는 킬로를 붙여 킬로미터로 표현하는 것을 생각해 보시면 이해가 빠르실겁니다.[1km = 1,000 m]
이러한 SI prefix 는 사람이 흔히 사용하는 Decimal 즉, 10진수를 기준으로 하는 단위이기 때문에 Binary 즉, 2진수를 기준으로 하는 컴퓨터에 바로 적용하면 약간의 문제가 생기게 됩니다. 그래서 컴퓨터와 같이 2진 단위를 위한 IEC prefix 라는 표준이 존재하고 있습니다. 이러한 IEC prefix 의 단위는 1,024(210) 배가 기준이 됩니다.
그런데 일반적으로 컴퓨터에서 용량을 표현할 땐 IEC Prefix 를 따로 구분하여 사용하는 경우는 흔치 않고 그냥 SI Prefix 를 그대로 사용하고 있습니다. 그냥 1KB 라면 통념적으로 1,024 Byte 로 알아서 1,024 배로 적용하여 사용하고 있는 것이죠. 이는 우리가 사용하는 윈도우에서도 그냥 1,024 Byte 는 1KB 로 표현하는 것을 가장 큰 예시로 들 수 있겠습니다. 이러한 표기법이 워낙에 널리 사용되니 그냥 표준처럼 굳어버린 겁니다. 하지만 엄밀히 SI prefix 표준을 따지자면 1KB 는 1,000 Byte 가 됩니다. 정확하게 IEC prefix 를 사용하여 표현하면 1 KB 는 1KiB 로 표시해야 맞습니다.
이렇듯 10진수 기준의 SI prefix 를 2진수를 사용하는 컴퓨터에 그냥 그대로 적용하여 사용해 버린 결과 원래의 표준인 Decimal 의 1,000 배와 컴퓨터에서 그냥 통념적으로 Binary 에 적용하여 사용하는 1,024 배의 사이에서 표준과 통념이 대립하여 작은 오해가 생길 수 있게 됩니다. 어짜피 우리가 사용하는 1 KB = 1,024 Byte 라는 기준은 통념일 뿐 정확한 표준이 아니기 때문이죠.[물론 이러한 문제를 해결하기 위해 따로 IEC prefix 표준을 만든 것 입니다.] 하지만 컴퓨터에서 SI prefix 를 바이너리에 적용하여 1,000 배가 아닌 1,024 배로 사용하는 것은 워낙에 오랜 시간에 걸쳐 전세계적으로 사용된 덕분에 표준처럼 굳어버렸고 크게 문제가 되진 않고 있습니다.
아래는 컴퓨터에서 사용하는 용량 단위를 정리한 표 입니다. 표기는 정확한 표준은 아니지만 관례적으로 사용하는 SI prefix 표기법과 표준인 IEC prefix 의 표기법을 함께 표시했습니다. 컴퓨터의 저장 장치에서 사용하는 용량의 단위는 아래와 같습니다.
※ 원래 SI prefix 와 IEC prefix 는 K, M, G, T, P, E, Z, Y 와 Ki, Mi, Gi, Ti, Pi, Ei, Zi, Yi 이지만 저장 장치에서 용량을 표기할 때는 Byte 인 B 와 결합하여 표기하기 때문에 B 를 포함하여 표기하였습니다.
각각의 용량은 한 단계씩 넘어갈 때 마다 1,024 배 된다고 생각하시면 됩니다. 즉 1,024 KB = 1 MB 이고 1,024 MB = 1 GB, 1,024 GB = 1 TB, 1,024 TB = 1 PB... 와 같습니다.
IEC prefix 는 우리가 흔히 보지는 못하는데요. 가끔 어떠한 자료에서는 이러한 IEC prefix 를 사용하기도 합니다. 마이크로소프트의 테크넷 자료나 위키피디아의 자료를 보시다 보면 가끔 IEC prefix 를 사용한 자료를 만나게 되는데요. IEC prefix 표기법과 관례적으로 사용되는 SI prefix 표기법을 명확하게 구분하여 사용하는 경우 해당 자료에서 SI prefix 로 표기된 것은 원래 SI prefix 의 계산법인 1,000 배로 계산한 자료일 가능성이 높습니다.
예로 DVD 의 용량을 표기하면서 DVD = 4.7 GB (4.38 GiB) 라는 식으로 자료에 표현되어 있다면 이 때 4.7 GB 는 SI prefix 대로 계산하여 4,700,000,000 Byte 임을 의미합니다. 그리고 이를 정확하게 컴퓨터에서 인식하는 4.38 GiB 도 함께 표시해 준 것 입니다.
이러한 예 이외에 통상의 자료에서 SI prefix 표기만을 사용하여 표현한 경우에는[캐플 블로그를 포함한 대부분의 자료와 운영체제, 프로그램에서는 이와 같이 표기] 우리가 통념적으로 사용하는 2진법 기준의 1,024 배로 계산한 관례적 표기임을 의미합니다.
윈도우에서 표시되는 저장 용량 단위는 관례적인 표기에 따라 SI prefix 로 표기합니다. 1,024 Byte 는 1 KB 로 표기하고 1,024 KB 는 1 MB 로 표기하는 것이지요. 그러나 위에서 이야기 했듯이 SI prefix 표기법은 10진법을 기준으로 하여 1,000 배로 단위가 올라가기 때문에 엄밀하게 표기대로만 따진다면 1 KB 는 1,000 Byte 가 되고 1 MB 는 1,000 KB 가 됩니다.
그래서 이러한 2진법 기준의 1,024 배로 단위가 올라가는 관례적인 계산 방법과 10진법 기준의 1,000 배로 단위가 올라가는 정확한 계산 방법 사이에는 해석에 따라 오차가 생길 수 있습니다. 과연 얼마의 오차가 생길까요? 아래는 2진법(Binary) 기준의 계산과 10진법(Decimal) 기준의 계산 사이의 오차를 정리한 표와 그래프 입니다.
GB(기가바이트) 단위에서는 10진법 기준의 계산법에 비해 2진법 기준의 계산법이 약 6.9% 정도 적어지게 되고 TB 로 넘어가면 무려 약 9% 나 더 적어지게 됩니다.
그런데 문제는 이러한 저장 용량을 표기하는 것에 있어서 지금까지 컴퓨터와 운영체제에서 관례적으로 사용되어 왔고 모든 이들에게 통념적으로 인식되어 왔던 2진법 기준의 계산법과 원래 SI prefix 에 정의된 10진법 기준의 정확한 계산법 사이에서 자칫 해석에 따라 위와 같은 오해와 오차가 실제로 발생할 수 있다는 겁니다. 그리고 이러한 오해와 오차를 지금까지 실제로 교묘하게 이용해 온 집단이 있습니다. 바로 하드 디스크 제조 업체와 같은 저장 장치 제조 업체들이 그들입니다.
이러한 하드 디스크 제조 업체들은 그 때까지 모든 컴퓨터 관련 분야에서 관례적으로 2진법 기준으로 계산되어 표기되던 용량의 단위를 아주 정직하고도 과감하게 관례를 버리고 SI prefix 표준에 따라 10진법 기준으로 계산하여 하드 디스크의 용량을 표기하기 시작했습니다.
이렇게 동일한 표기지만 위에서 이야기 했듯이 해석에 따라 그 값은 달라지게 되죠. 제조 업체가 출시하는 10진법 기준의 계산에 따른 160 GB 용량의 하드 디스크는 지금까지 우리가 모두 그러한 걸로 믿어 의심치 않던 2진법 기준의 계산법대로 계산하게 되면 149 GB 밖에 되지 않는 것 입니다. 그리고 실제로 제조 업체가 160 GB 용량이라고 표기한 하드 디스크는 컴퓨터에선 149 GB 로 인식됩니다. 마찬가지로 320 GB 용량의 하드 디스크는 298 GB 이며 640 GB 용량의 하드 디스크는 596 GB 이죠.
테라바이트 급으로 넘어가면 용량의 차이는 더욱 커집니다. 1 TB 용량의 하드 디스크는 927 GB 이며 1.5 TB 용량의 하드 디스크는 1.39 TB 이고 2 TB 용량의 하드 디스크는 1.81 TB 인 것 입니다. 2 TB 용량의 하드 디스크의 경우 무려 용량 차이가 약 200 GB 에 다다르는 것이죠.
이것은 비단 하드 디스크 제조 업체들만의 문제는 아닙니다. USB 플래시 메모리 드라이브를 비롯한 CF, SD 와 같은 플래시 메모리류의 저장 장치를 제조하는 샌디스크, 킹스턴 등과 같은 업체들도 이러한 방식으로 용량을 표기하고 있습니다. 어느 것이나 소비자 입장에선 지금까지 자신이 알던 용량으로 믿고 구매했는데 오차만큼의 차이가 발생하게 되고 그만큼 자신이 손해를 보았다고 느낄 수 밖에 없습니다.
실제로 미국에서는 소비자들이 이러한 것에 불만을 품고 하드 디스크와 플래시 메모리 카드 제조 업체들을 상대로 소송을 건사례도 있습니다.
위의 기사를 통해 보아서도 알겠지만 사실 엄밀하게 따지자면 관련 업체들의 표기법이 문제가 되는 것은 아닙니다. 왜냐하면 그들은 SI prefix 에 의한 정확한 계산법대로 계산하고 표기했을 뿐이며 우리는 그것을 관례적으로 계산되어온 방식으로 계산을 했을 뿐이기 때문입니다. 더불어 컴퓨터의 용량을 표기하는 IEC prefix 라는 GiB(기비바이트) 나 TiB(테비바이트) 와 같은 정확한 표기법도 이미 제정이 되어 사용되고 있는 상태이기 때문이죠.
그러나 캐플이 생각하기에 이러한 제조 업체들에겐 도의적인 책임이 있다고 생각합니다. 비록 SI prefix 의 표기법을 빌려 쓴 것이지만 지금까지 모든 컴퓨터와 운영체제, 프로그램 관련 업체들에서 이러한 관례적인 표기법을 사용해왔고 따라서 사용자들은 거의 대부분이 이러한 표기법이 표준인 줄 알고 있으며 이와 같은 인식이 대한민국 한 군데도 아니고 전세계적으로 하나의 기정 사실로써 굳어있는 상태에서 애써 굳이 그러하지 않아도 되었던 것을 꿋꿋하면서도 정말 깔끔하고 신속하게 오직 그들만 끝끝내 SI prefix 를 정확하게 적용하여 계산하였기 때문입니다.
초창기 마땅한 대안이 없어 SI prefix 의 표기법을 빌려온 것 뿐이고 비록 빌려온 것이지만 모두가 2진법 기준의 계산 방법을 사용하고 있는 상황에서 말이죠. 이러한 내용을 그들 자신도 스스로 알고 있으니 소액의 환불과 함께 10진법으로 계산한 것임을 밝히는 안내문을 적고 새로운 제품을 구매시 5~10% 할인 된 가격으로 구매할 수 있는 화해 안을 제시한 것일 테지요.
※ 램의 경우에는 표기된 용량과 인식되는 용량이 동일합니다. 그 외에 몇 가지 저장 장치의 경우 표기된 용량과 인식되는 용량이 동일하기도 합니다.
저울의 눈금을 속이는 장사치는 3 대가 빌어 먹는다는 말이 있습니다. 그들은 그들 나름대로의 합리적이고 타당한 이유로 저장 용량을 표기하였지만 지금까지 이러한 사실을 몰랐던 소비자들에게 그들의 행위는 저울의 눈금을 속이는 장사치의 행위와 다를 바가 없게 느껴지지 않을까요? 전 충분히 그러한 인식도 가능하다고 생각합니다.
그래서 결론은 관련 제조 업체들 모두가 3 대를 빌어 쳐 먹으라고는 안 할테니 2 TB 짜리 하드 디스크 가격이나 좀 화끈하게 내려줬으면 합니다. 그리고 왜 하드 디스크의 용량이 부족하죠? 제가 뭘 잘못했나요? 와 같은 질문 글을 더이상 보고 싶지 않으니 관련 업체들이 대대적으로 이러한 사실을 밝히는 광고를 좀 해 주세요! 제발!!!
근데 이 포스팅은 왜 적기만 하면 결론이 전혀 엉뚱한 방향으로 나는 거지?
☞ SI prefix 표
추가로 이 포스팅에서 논란의 중심이 되었던 SI prefix 표를 올려드리도록 하겠습니다. 우리가 일상 생활에서 많이 접할 수 있는 단위들이 잘 정리되어 있습니다.
저장 용량의 기본 단위 바이트 그리고 SI Prefix 와 IEC Prefix
저장 장치는 기본적인 용량의 단위로 바이트(Byte)를 사용합니다.
비트(Bit) 와 바이트(Byte)
비트(Bit)란 컴퓨터에서 사용되는 최소의 단위로써 Binary digit 의 약자입니다. 즉, 2진수라는 것으로 0 과 1 로 구분되는 컴퓨터에서 사용되는 최소의 정보 처리 단위입니다. 익히 알다시피 컴퓨터는 전기로 움직이는 전자 제품입니다. 디지털에선 꺼졌다(0) 켜졌다(1) 의 두 가지 경우 밖에 없죠. 이러한 0 과 1 로 표현되는 정보의 처리 단위가 바로 비트입니다. 보통 표시할 땐 소문자 b 로써 표현합니다.
바이트(Byte)란 컴퓨터가 처리하는 정보의 기본 단위입니다. 비트가 0 과 1 두 가지의 경우 밖에 표시하지 못하므로 일정한 단위로 묶어 바이트라고 표시하고 이를 정보 처리의 기본 단위로 사용하고 있습니다. 흔히 8 개의 비트를 하나로 묶어 1 Byte 라고 하고 있으며 이로써 1 Byte 가 표현할 수 있는 정보의 개수는 28 = 256 개가 됩니다.(1 Byte = 8 Bit) 이러한 1 Byte 는 문자를 표현하는 가장 작은 단위로 256 개의 정보로 숫자, 영문자, 특수기호 등을 모두 표현하게 됩니다.(한글과 같은 동양권 문자는 1 바이트가 아닌 2 바이트로 표현하기 때문에 2 바이트 문자라고 표현됩니다.) 거의 모든 저장 장치의 용량을 표시할 땐 이러한 바이트를 기준으로 삼게 됩니다. 보통 표시할 땐 대문자 B 로써 표현합니다.
비트(Bit)란 컴퓨터에서 사용되는 최소의 단위로써 Binary digit 의 약자입니다. 즉, 2진수라는 것으로 0 과 1 로 구분되는 컴퓨터에서 사용되는 최소의 정보 처리 단위입니다. 익히 알다시피 컴퓨터는 전기로 움직이는 전자 제품입니다. 디지털에선 꺼졌다(0) 켜졌다(1) 의 두 가지 경우 밖에 없죠. 이러한 0 과 1 로 표현되는 정보의 처리 단위가 바로 비트입니다. 보통 표시할 땐 소문자 b 로써 표현합니다.
바이트(Byte)란 컴퓨터가 처리하는 정보의 기본 단위입니다. 비트가 0 과 1 두 가지의 경우 밖에 표시하지 못하므로 일정한 단위로 묶어 바이트라고 표시하고 이를 정보 처리의 기본 단위로 사용하고 있습니다. 흔히 8 개의 비트를 하나로 묶어 1 Byte 라고 하고 있으며 이로써 1 Byte 가 표현할 수 있는 정보의 개수는 28 = 256 개가 됩니다.(1 Byte = 8 Bit) 이러한 1 Byte 는 문자를 표현하는 가장 작은 단위로 256 개의 정보로 숫자, 영문자, 특수기호 등을 모두 표현하게 됩니다.(한글과 같은 동양권 문자는 1 바이트가 아닌 2 바이트로 표현하기 때문에 2 바이트 문자라고 표현됩니다.) 거의 모든 저장 장치의 용량을 표시할 땐 이러한 바이트를 기준으로 삼게 됩니다. 보통 표시할 땐 대문자 B 로써 표현합니다.
Prefixes for bit and byte multiples | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
이러한 SI prefix 는 사람이 흔히 사용하는 Decimal 즉, 10진수를 기준으로 하는 단위이기 때문에 Binary 즉, 2진수를 기준으로 하는 컴퓨터에 바로 적용하면 약간의 문제가 생기게 됩니다. 그래서 컴퓨터와 같이 2진 단위를 위한 IEC prefix 라는 표준이 존재하고 있습니다. 이러한 IEC prefix 의 단위는 1,024(210) 배가 기준이 됩니다.
그런데 일반적으로 컴퓨터에서 용량을 표현할 땐 IEC Prefix 를 따로 구분하여 사용하는 경우는 흔치 않고 그냥 SI Prefix 를 그대로 사용하고 있습니다. 그냥 1KB 라면 통념적으로 1,024 Byte 로 알아서 1,024 배로 적용하여 사용하고 있는 것이죠. 이는 우리가 사용하는 윈도우에서도 그냥 1,024 Byte 는 1KB 로 표현하는 것을 가장 큰 예시로 들 수 있겠습니다. 이러한 표기법이 워낙에 널리 사용되니 그냥 표준처럼 굳어버린 겁니다. 하지만 엄밀히 SI prefix 표준을 따지자면 1KB 는 1,000 Byte 가 됩니다. 정확하게 IEC prefix 를 사용하여 표현하면 1 KB 는 1KiB 로 표시해야 맞습니다.
이렇듯 10진수 기준의 SI prefix 를 2진수를 사용하는 컴퓨터에 그냥 그대로 적용하여 사용해 버린 결과 원래의 표준인 Decimal 의 1,000 배와 컴퓨터에서 그냥 통념적으로 Binary 에 적용하여 사용하는 1,024 배의 사이에서 표준과 통념이 대립하여 작은 오해가 생길 수 있게 됩니다. 어짜피 우리가 사용하는 1 KB = 1,024 Byte 라는 기준은 통념일 뿐 정확한 표준이 아니기 때문이죠.[물론 이러한 문제를 해결하기 위해 따로 IEC prefix 표준을 만든 것 입니다.] 하지만 컴퓨터에서 SI prefix 를 바이너리에 적용하여 1,000 배가 아닌 1,024 배로 사용하는 것은 워낙에 오랜 시간에 걸쳐 전세계적으로 사용된 덕분에 표준처럼 굳어버렸고 크게 문제가 되진 않고 있습니다.
컴퓨터의 저장 용량 단위
아래는 컴퓨터에서 사용하는 용량 단위를 정리한 표 입니다. 표기는 정확한 표준은 아니지만 관례적으로 사용하는 SI prefix 표기법과 표준인 IEC prefix 의 표기법을 함께 표시했습니다. 컴퓨터의 저장 장치에서 사용하는 용량의 단위는 아래와 같습니다.
관례적 표기 | IEC prefix | 내용 | ||||
---|---|---|---|---|---|---|
이름 | 기호 | 이름 | 기호 | 2진 기준 | 값 (Byte) | |
kilo byte | KB | kibi byte | KiB | 210 Byte | 1,024 Byte | |
mega byte | MB | mebi byte | MiB | 220 Byte | 1,048,576 Byte | |
giga byte | GB | gibi byte | GiB | 230 Byte | 1,073,741,824 Byte | |
tera byte | TB | tebi byte | TiB | 240 Byte | 1,099,511,627,776 Byte | |
peta byte | PB | pebi byte | PiB | 250 Byte | 1,125,899,906,842,624 Byte | |
exa byte | EB | exbi byte | EiB | 260 Byte | 1,152,921,504,606,846,976 Byte | |
zetta byte | ZB | zebi byte | ZiB | 270 Byte | 1,180,591,620,717,411,303,424 Byte | |
yotta byte | YB | yobi byte | YiB | 280 Byte | 1,208,925,819,614,629,174,706,176 Byte |
※ 원래 SI prefix 와 IEC prefix 는 K, M, G, T, P, E, Z, Y 와 Ki, Mi, Gi, Ti, Pi, Ei, Zi, Yi 이지만 저장 장치에서 용량을 표기할 때는 Byte 인 B 와 결합하여 표기하기 때문에 B 를 포함하여 표기하였습니다.
각각의 용량은 한 단계씩 넘어갈 때 마다 1,024 배 된다고 생각하시면 됩니다. 즉 1,024 KB = 1 MB 이고 1,024 MB = 1 GB, 1,024 GB = 1 TB, 1,024 TB = 1 PB... 와 같습니다.
IEC prefix 는 우리가 흔히 보지는 못하는데요. 가끔 어떠한 자료에서는 이러한 IEC prefix 를 사용하기도 합니다. 마이크로소프트의 테크넷 자료나 위키피디아의 자료를 보시다 보면 가끔 IEC prefix 를 사용한 자료를 만나게 되는데요. IEC prefix 표기법과 관례적으로 사용되는 SI prefix 표기법을 명확하게 구분하여 사용하는 경우 해당 자료에서 SI prefix 로 표기된 것은 원래 SI prefix 의 계산법인 1,000 배로 계산한 자료일 가능성이 높습니다.
예로 DVD 의 용량을 표기하면서 DVD = 4.7 GB (4.38 GiB) 라는 식으로 자료에 표현되어 있다면 이 때 4.7 GB 는 SI prefix 대로 계산하여 4,700,000,000 Byte 임을 의미합니다. 그리고 이를 정확하게 컴퓨터에서 인식하는 4.38 GiB 도 함께 표시해 준 것 입니다.
이러한 예 이외에 통상의 자료에서 SI prefix 표기만을 사용하여 표현한 경우에는[캐플 블로그를 포함한 대부분의 자료와 운영체제, 프로그램에서는 이와 같이 표기] 우리가 통념적으로 사용하는 2진법 기준의 1,024 배로 계산한 관례적 표기임을 의미합니다.
SI prefix - 관례적 표기와 정확한 표기 사이의 오차
윈도우에서 표시되는 저장 용량 단위는 관례적인 표기에 따라 SI prefix 로 표기합니다. 1,024 Byte 는 1 KB 로 표기하고 1,024 KB 는 1 MB 로 표기하는 것이지요. 그러나 위에서 이야기 했듯이 SI prefix 표기법은 10진법을 기준으로 하여 1,000 배로 단위가 올라가기 때문에 엄밀하게 표기대로만 따진다면 1 KB 는 1,000 Byte 가 되고 1 MB 는 1,000 KB 가 됩니다.
그래서 이러한 2진법 기준의 1,024 배로 단위가 올라가는 관례적인 계산 방법과 10진법 기준의 1,000 배로 단위가 올라가는 정확한 계산 방법 사이에는 해석에 따라 오차가 생길 수 있습니다. 과연 얼마의 오차가 생길까요? 아래는 2진법(Binary) 기준의 계산과 10진법(Decimal) 기준의 계산 사이의 오차를 정리한 표와 그래프 입니다.
Prefix | Bin ÷ Dec | Dec ÷ Bin | Percentage difference |
---|---|---|---|
kilo | 1.024 | 0.9766 | +2.4% or −2.3% |
mega | 1.049 | 0.9537 | +4.9% or −4.6% |
giga | 1.074 | 0.9313 | +7.4% or −6.9% |
tera | 1.100 | 0.9095 | +10.0% or −9.1% |
peta | 1.126 | 0.8882 | +12.6% or −11.2% |
exa | 1.153 | 0.8674 | +15.3% or −13.3% |
zetta | 1.181 | 0.8470 | +18.1% or −15.3% |
yotta | 1.209 | 0.8272 | +20.9% or −17.3% |
GB(기가바이트) 단위에서는 10진법 기준의 계산법에 비해 2진법 기준의 계산법이 약 6.9% 정도 적어지게 되고 TB 로 넘어가면 무려 약 9% 나 더 적어지게 됩니다.
오차는 나의 돈?
그런데 문제는 이러한 저장 용량을 표기하는 것에 있어서 지금까지 컴퓨터와 운영체제에서 관례적으로 사용되어 왔고 모든 이들에게 통념적으로 인식되어 왔던 2진법 기준의 계산법과 원래 SI prefix 에 정의된 10진법 기준의 정확한 계산법 사이에서 자칫 해석에 따라 위와 같은 오해와 오차가 실제로 발생할 수 있다는 겁니다. 그리고 이러한 오해와 오차를 지금까지 실제로 교묘하게 이용해 온 집단이 있습니다. 바로 하드 디스크 제조 업체와 같은 저장 장치 제조 업체들이 그들입니다.
살아 있는 놈들이나 죽은 놈들이나 모두 같은 놈들
이러한 하드 디스크 제조 업체들은 그 때까지 모든 컴퓨터 관련 분야에서 관례적으로 2진법 기준으로 계산되어 표기되던 용량의 단위를 아주 정직하고도 과감하게 관례를 버리고 SI prefix 표준에 따라 10진법 기준으로 계산하여 하드 디스크의 용량을 표기하기 시작했습니다.
이렇게 동일한 표기지만 위에서 이야기 했듯이 해석에 따라 그 값은 달라지게 되죠. 제조 업체가 출시하는 10진법 기준의 계산에 따른 160 GB 용량의 하드 디스크는 지금까지 우리가 모두 그러한 걸로 믿어 의심치 않던 2진법 기준의 계산법대로 계산하게 되면 149 GB 밖에 되지 않는 것 입니다. 그리고 실제로 제조 업체가 160 GB 용량이라고 표기한 하드 디스크는 컴퓨터에선 149 GB 로 인식됩니다. 마찬가지로 320 GB 용량의 하드 디스크는 298 GB 이며 640 GB 용량의 하드 디스크는 596 GB 이죠.
테라바이트 급으로 넘어가면 용량의 차이는 더욱 커집니다. 1 TB 용량의 하드 디스크는 927 GB 이며 1.5 TB 용량의 하드 디스크는 1.39 TB 이고 2 TB 용량의 하드 디스크는 1.81 TB 인 것 입니다. 2 TB 용량의 하드 디스크의 경우 무려 용량 차이가 약 200 GB 에 다다르는 것이죠.
이것은 비단 하드 디스크 제조 업체들만의 문제는 아닙니다. USB 플래시 메모리 드라이브를 비롯한 CF, SD 와 같은 플래시 메모리류의 저장 장치를 제조하는 샌디스크, 킹스턴 등과 같은 업체들도 이러한 방식으로 용량을 표기하고 있습니다. 어느 것이나 소비자 입장에선 지금까지 자신이 알던 용량으로 믿고 구매했는데 오차만큼의 차이가 발생하게 되고 그만큼 자신이 손해를 보았다고 느낄 수 밖에 없습니다.
실제로 미국에서는 소비자들이 이러한 것에 불만을 품고 하드 디스크와 플래시 메모리 카드 제조 업체들을 상대로 소송을 건사례도 있습니다.
위의 기사를 통해 보아서도 알겠지만 사실 엄밀하게 따지자면 관련 업체들의 표기법이 문제가 되는 것은 아닙니다. 왜냐하면 그들은 SI prefix 에 의한 정확한 계산법대로 계산하고 표기했을 뿐이며 우리는 그것을 관례적으로 계산되어온 방식으로 계산을 했을 뿐이기 때문입니다. 더불어 컴퓨터의 용량을 표기하는 IEC prefix 라는 GiB(기비바이트) 나 TiB(테비바이트) 와 같은 정확한 표기법도 이미 제정이 되어 사용되고 있는 상태이기 때문이죠.
그러나 캐플이 생각하기에 이러한 제조 업체들에겐 도의적인 책임이 있다고 생각합니다. 비록 SI prefix 의 표기법을 빌려 쓴 것이지만 지금까지 모든 컴퓨터와 운영체제, 프로그램 관련 업체들에서 이러한 관례적인 표기법을 사용해왔고 따라서 사용자들은 거의 대부분이 이러한 표기법이 표준인 줄 알고 있으며 이와 같은 인식이 대한민국 한 군데도 아니고 전세계적으로 하나의 기정 사실로써 굳어있는 상태에서 애써 굳이 그러하지 않아도 되었던 것을 꿋꿋하면서도 정말 깔끔하고 신속하게 오직 그들만 끝끝내 SI prefix 를 정확하게 적용하여 계산하였기 때문입니다.
초창기 마땅한 대안이 없어 SI prefix 의 표기법을 빌려온 것 뿐이고 비록 빌려온 것이지만 모두가 2진법 기준의 계산 방법을 사용하고 있는 상황에서 말이죠. 이러한 내용을 그들 자신도 스스로 알고 있으니 소액의 환불과 함께 10진법으로 계산한 것임을 밝히는 안내문을 적고 새로운 제품을 구매시 5~10% 할인 된 가격으로 구매할 수 있는 화해 안을 제시한 것일 테지요.
※ 램의 경우에는 표기된 용량과 인식되는 용량이 동일합니다. 그 외에 몇 가지 저장 장치의 경우 표기된 용량과 인식되는 용량이 동일하기도 합니다.
저울의 눈금을 속이는 장사치는 3 대가 빌어 먹는다는 말이 있습니다. 그들은 그들 나름대로의 합리적이고 타당한 이유로 저장 용량을 표기하였지만 지금까지 이러한 사실을 몰랐던 소비자들에게 그들의 행위는 저울의 눈금을 속이는 장사치의 행위와 다를 바가 없게 느껴지지 않을까요? 전 충분히 그러한 인식도 가능하다고 생각합니다.
그래서 결론은 관련 제조 업체들 모두가 3 대를 빌어 쳐 먹으라고는 안 할테니 2 TB 짜리 하드 디스크 가격이나 좀 화끈하게 내려줬으면 합니다. 그리고 왜 하드 디스크의 용량이 부족하죠? 제가 뭘 잘못했나요? 와 같은 질문 글을 더이상 보고 싶지 않으니 관련 업체들이 대대적으로 이러한 사실을 밝히는 광고를 좀 해 주세요! 제발!!!
근데 이 포스팅은 왜 적기만 하면 결론이 전혀 엉뚱한 방향으로 나는 거지?
☞ SI prefix 표
추가로 이 포스팅에서 논란의 중심이 되었던 SI prefix 표를 올려드리도록 하겠습니다. 우리가 일상 생활에서 많이 접할 수 있는 단위들이 잘 정리되어 있습니다.
Prefix | Symbol | 1000m | 10n | Decimal | Short scale | Long scale | Since |
---|---|---|---|---|---|---|---|
yotta | Y | 10008 | 1024 | 1000000000000000000000000 | Septillion | Quadrillion | 1991 |
zetta | Z | 10007 | 1021 | 1000000000000000000000 | Sextillion | Trilliard | 1991 |
exa | E | 10006 | 1018 | 1000000000000000000 | Quintillion | Trillion | 1975 |
peta | P | 10005 | 1015 | 1000000000000000 | Quadrillion | Billiard | 1975 |
tera | T | 10004 | 1012 | 1000000000000 | Trillion | Billion | 1960 |
giga | G | 10003 | 109 | 1000000000 | Billion | Milliard | 1960 |
mega | M | 10002 | 106 | 1000000 | Million | 1960 | |
kilo | k | 10001 | 103 | 1000 | Thousand | 1795 | |
hecto | h | 10002⁄3 | 102 | 100 | Hundred | 1795 | |
deca | da | 10001⁄3 | 101 | 10 | Ten | 1795 | |
10000 | 100 | 1 | One | ||||
deci | d | 1000−1⁄3 | 10−1 | 0.1 | Tenth | 1795 | |
centi | c | 1000−2⁄3 | 10−2 | 0.01 | Hundredth | 1795 | |
milli | m | 1000−1 | 10−3 | 0.001 | Thousandth | 1795 | |
micro | μ | 1000−2 | 10−6 | 0.000001 | Millionth | 1960 | |
nano | n | 1000−3 | 10−9 | 0.000000001 | Billionth | Milliardth | 1960 |
pico | p | 1000−4 | 10−12 | 0.000000000001 | Trillionth | Billionth | 1960 |
femto | f | 1000−5 | 10−15 | 0.000000000000001 | Quadrillionth | Billiardth | 1964 |
atto | a | 1000−6 | 10−18 | 0.000000000000000001 | Quintillionth | Trillionth | 1964 |
zepto | z | 1000−7 | 10−21 | 0.000000000000000000001 | Sextillionth | Trilliardth | 1991 |
yocto | y | 1000−8 | 10−24 | 0.000000000000000000000001 | Septillionth | Quadrillionth | 1991 |
|