The other night at golf league one of the members was commenting on how he ordered a new computer and “upon delivery the hard drive was reported as 20gb less than what the size on the website” had advertised. He was supposed to have 160gb hard drive, but when Windows was installed and the drive was viewed for available space it showed around 149gb. With the hefty Windows install, the drive was down close to 125gb. I had a good idea of what was going on as far as interpreting what a hard drive truly consisted of and how the computer interpreted it. A quick Google search pulled up some forum debates and a few good articles. Tech Support Guy Forums has a member that gave a pretty straightforward answer.

That’s right. That is the true amount of space on a one terabyte drive. The manufacturer’s use 1000 kb as one MB, rather than 1024 kb.

Which is correct if you think about the percentage of space you would miss out on. In normal conversions we would expect 1 kilogram to equal 1,000 grams. This may be true for volume, or weight, but the computer sees 1 kilobyte as 1024 bytes, 1 megabyte as 1024 kilobyte, and 1 gigabyte as 1024 megabytes.

But although computer data and file size is normally measured in binary code using the binary number system (counted by factors of two 1, 2, 4, 8, 16, 32, 64, etc), the prefixes for the multiples are based on the metric system!  The nearest binary number to 1,000 is 2^10 or 1,024; thus 1,024 bytes was named a Kilobyte.  So, although a metric “kilo” equals 1,000 (e.g. one kilogram = 1,000 grams), a binary “Kilo” equals 1,024 (e.g. one Kilobyte = 1,024 bytes).  Not surprisingly, this has led to a great deal of confusion.

Using this we would need 10,737,418,240 bytes to make a full 10 gigabyte drive. However, since manufacturers consider a kilobyte to be 1000 bytes not 1024 there would only be 10,000,000,000 bytes on the drive. When we do the math in reverse we see that we would have a significantly lower amount of space than what the manufacturer reported on let’s say a 10gb drive. 10,000,000,000 bytes / 1024 kb / 1024 mb / 1024 gb = ~ 9.313 gb

We can use the same logic to explain the missing space from my golf friends deilema:
160 / 1.024 /1.024 / 1.024 = ~149.0116 gb

There is some great information on what a bit & byte consist of and why a computer see’s kilobytes as 1024 bytes instead of 1000 here. There is also information on new standards for naming binary data storage space and how it is not proper metric conversion.

In addition you can use Windows to see the physical bytes available on a given drive. Navigate to Start > My Computer. You should see all your drives that are on your system listed there. Right-Click the drive in question and choose Properties from the pop-up menu. You should then see a screen similar to the following:
hdinbytes

Next to the Used Space and Free Space, you should see two sets of numbers. One is your actual byte total, the other being your total as the computer sees it. If you take the first number and divide it by 1,024 three times you’ll get the approximate value reported for the actual binary data storage.

Hopefully someone else found this as interesting as I did. Who am I kidding, unless you’re a geek you probably wouldn’t read past the first sentence of the post! 🙂