I have a Kingston SDHC card 4GB class4, but on Windows 7 it's recognized only with 3.68 GB space available;

I've already formatted the card and I get only 3.68GB; How I can get 4GB space available on the card?

thanks

max

link|improve this question
feedback

migrated from stackoverflow.com Mar 10 '11 at 23:34

This question came from our site for professional and enthusiast programmers.

3 Answers

The reason for the discrepancy is that Kingston is labeling the card based on the base-10 value of GB, where one GB is 1000000 bytes, while Windows is reporting the card based on the base-2 value of GB (also called GiB), where one GB is 1073741824 bytes.

4 * 1000000000 / 1073741824 is equal to roughly 3.7.

The answer is that you can't get 4 GB of space available because your card physically doesn't have that much space.

You can see http://en.wikipedia.org/wiki/Gigabyte for more information.

Hard drive and storage manufacturers like to use 10^9 as the value for a GB because it lets them advertise more space. 2^30 is the actual relevant measurement.

link|improve this answer
feedback

This is common. The size of the card is advertised as 4GB where 1GB is 1,000 MB. However, that is not accurate. There are actually 1,024 MB in a full GB. Manufacturers use the "1,000" all the way through the conversion instead of the correct 1,024.

Using the proper number to calculate gigabytes should give you something like 4GB = 4,194,304 bytes. However, the manufacturer advertises 4GB = 4,000,000. 4,000,000 bytes is, in fact, around 3.68GB.

link|improve this answer
feedback

Binary/Decimal differences is one option, but I think in the case the "missing" space is simply reserved during formatting for file system information... it's why you can have a file with a really long name that's still shown as taking up zero space on the drive. Those file names and other metadata have to be stored somewhere.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown