Feeds

SanDisk redefines ‘megabyte’ in capacity con

Why its 256MB CompactFlash cards store less than everyone else's

  • alert
  • submit to reddit

Updated When is a 256MB CompactFlash card not a 256MB CompactFlash card? When it comes from storage specialist SanDisk, it seems.

According to the company's Web site, SanDisk doesn't accept the definition of megabyte that world+dog does, and has imposed its own view.

But, like most of the World's pain, it's all Microsoft's fault.

In answer to the question, "Why is the size of my card appearing slightly smaller when read by my system than the capacity listed on the label?" the company's FAQ says: "SanDisk uses 1000KB to equal 1MB whereas Microsoft and some other companies use 1024KB to equal 1MB."

The site continues:

"Example:
Microsoft's MB is 1024KB x 1024KB = 1,048,576KB
Our MB is 1000KB x 1000KB = 1,000,000KB
48,576 KB difference

48,576KB X 64MB (our 64MB CF card) = 3,108,864MB"

Confused? We're not surprised, since clearly SanDisk can't tell megabytes from kilobytes and even bytes themselves. From the example it seems that SanDisk doesn't even accept the standard definition of a kilobyte as 1024 bytes.

What we think it's trying to say is that a SanDisk megabyte is 48,576 bytes smaller than everyone else's. So, if you buy a 64MB SanDisk CompactFlash card, you'll actually get 3,108,864 fewer bytes than you expect.

From what we recall from that Computer Studies O-Level we did back in the early 80s, there are eight bits to a byte and 1024 bytes to a kilobyte. In Register style, that's 8b = 1B and 1024B = 1KB (ie. lower-case for 'bit', upper-case for 'byte'). Why does 'kilo' here represent 1024 not 1000, as it does in the metric system? Because it's all to do with binary notation, since two raise to the power of ten gives 1024 not 1000.

So SanDisk is wrong there. At the very least, its megabytes should be 1024 x 1000, not 1000 x 1000. Now, we have a sneaking suspicion that megabyte (MB) is defined as 1000KB, not 1024KB, but even if that were the case - and we're not sure our memory isn't playing us false on this one - since everyone from Apple to Zilog defines 1MB as 1024KB, that's the way it is.

It's like a British billion being 1,000,000 x 1,000,000, but a US billion being merely 1000 x 1,000,000. The US version is the most commonly used, by a long chalk, so it's the de facto definition. And the one we use here on The Reg.

Meanwhile, SanDisk is merrily offering Flash cards with a lower capacity than anyone would expect, but claims it's in the right by adopting its own definition. This can't be right. If Microsoft started redefining bugs as features, there'd be an uproar.

What d'you mean, it already has?

Oh, heck... ®

Thanks to reader Phil White for the SanDisk link

Related Link

SanDisk: FAQ page - choose the Capacity topic and then the 'Why is the size of my card...' question

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Reducing security risks from open source software
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Consolidation: the foundation for IT and business transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.