Search
Duplicate
💾

KB(킬로바이트)와 KiB(키비바이트)

간단소개
가끔 보이는 KiB(키비바이트)는 어떤 것이고 왜 생겼을까?
팔만코딩경 컨트리뷰터
ContributorNotionAccount
주제 / 분류
Linux
잡지식
Scrap
태그
born2beroot
9 more properties
Linux 계열의 운영체제에서 free 명령어를 쓰다보면, -k 옵션과 --kilo 옵션을 쓸 때 서로 다른 용량으로 출력되는 것을 확인할 수 있다.
보통은 --kilo 옵션의 약어는 -k 옵션 아닌가? 라고 생각하겠지만, 실제로 -k 옵션은 --kibi 라는 옵션의 약어이기 때문이다. 이 옵션이 바로 키비바이트(Kibibyte)이다.

키비바이트(KiB)와 킬로바이트(KB)

키비바이트(Kibibyte)는 Kilo binary byte의 준말로 킬로 이진 바이트라는 뜻을 가진다. 여기서 1 킬로 이진 바이트는 다음과 같이 나타낸다.
1 KiB = 2¹⁰ bytes = 1024 bytes
여기서 의문이 생길수 있다. 1 키비바이트가 1024 바이트면, 1 킬로바이트는 어떻게 되는걸까?
키비바이트와 킬로바이트가 혼용되어서 사용될 때는 1 킬로바이트는 다음과 같이 나타낸다.
1 KB = 10³ bytes = 1000 bytes
즉, 키비바이트가 있을 때 킬로바이트는 기존 SI 접두어 표시되어, 10³ 단위로 나타나게 된다.

키비바이트는 왜 생긴걸까?

킬로바이트, 정확히는 SI 접두어는 컴퓨터 메모리의 용량을 표현할 때 초창기부터 사용해왔다. 다만 그 때는, 용량 크기가 워낙에 작았고 컴퓨터 자체가 대중화되지 않았기 때문에, SI 접두어를 이진 단위로 표현해서 혼동이 되어도 문제가 되는 부분은 많지 않았다.
하지만 시간이 지나면서 컴퓨터가 점점 대중화되어가고 컴퓨터 메모리의 용량이 증가함에 따라, SI 접두어를 쓰면서 혼동되는 문제를 무시할 수 없게 되었다.
가령, 제품 생산자는 1 테라바이트를 1000GB로 생각하고 판매를 했는데, 소비자는 1 테라바이트를 1024GB라고 생각하고 구매했다고 하자. 이 때 발생하는 괴리는 무려 24GB로 적지않은 용량이 된다.
따라서, 이러한 괴리를 막고자 SI 접두어와 이진 접두어를 분리하기로 결정했고, 1998년 IEC에서 이진 접두어에 대한 표준을 정의하게 되었다. 이렇게 키비바이트가 생겨났다.

출처

키비바이트
SI 접두어
혹시 잘못된 부분이 있다면 댓글로 지적 부탁드립니다!