Ubuntu fixes disk capacity bug

Summary: Snow Leopard converted to base-10 last year, provoking digerati outrage. Now Linux distro Ubuntu 10.04, "Lucid Lynx" is following. When will Microsoft get with the program?

Snow Leopard converted to base-10 last year, provoking digerati outrage. Now Ubuntu 10.04, "Lucid Lynx" a Linux distro, is following.

And the CPU-centric traditionalists are cranky. Get over it: for 200 years kilo has meant 1,000 and it's time for computer nerds to join the rest of the human race.

The problem with base 2 Drive vendors have always measured capacity in the proper SI units of 10^n. Because CPUs access RAM in bytes, words and longwords - all powers of 2 - many long-time computer users got used to thinking of kilo, mega, giga and so on as base 2 prefixes.

But they aren't. The French invented the metric system in the 1780s and all its units have always been based on 10 - not 2.

We could all ignore the difference when talking about megabytes, but as we move into the Petabyte and beyond era, the percentage difference between base 2 and base 10 keeps growing:

This has to be fixed. Changing to how disk vendors have always measured it is the right way to go.

BTW, Ubuntu allows users to change the default to the old geezertech model. When will Microsoft get the memo?

The Storage Bits take The enterprise has been enduring the consumerization of tech for 3 decades. Now the same is happening to early adopters.

The arguments are always the same: the (PC, NetWare, SATA) isn't good enough. And the old guard always loses because in America, if it is cheaper and mostly does the job, we go with it.

But this shift is more significant because it is another signal that the CPU-centric era is coming to an end. Oh, we'll keep buying CPUs, but as Apple is demonstrating, who really cares what makes their iPhone or iPad go?

We're moving into a data and storage-centric world. The only reason people buy CPUs and networks is to access data they care about, be that videos, spreadsheets, games or web sites.

99.9% of the market could care less that CPUs access RAM in powers of 2 - they don't even know there's a difference. They just want their computer to agree with what is on the disk drive box.

Kudos to Ubuntu for joining the 21st century.

Comments welcome, of course. I changed my mind on this issue after seeing how it confused civilians in the small town where I live. See Your capacity will vary for my old view and Snow Leopard fixes disk capacity bug for the new and improved me.

Topics: Open Source, Hardware, Processors

About

Robin Harris has been messing with computers for over 30 years and selling and marketing data storage for over 20 in companies large and small.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

48 comments
Log in or register to join the discussion
  • I have to agree

    It doesn't bother me so much in hard drives,
    but really annoys me with regards to flash
    media. I needed to fill card with 4GB of data
    at work to test a feature in our software. But
    I had to use an 8GB card because the 4GB card
    won't actually hold 4GB of data according to
    Windows.

    (Yes, I know that even calculating both on base
    10 won't change what can actually be stored on
    a card. It would just be nice if they agree.)
    aep528
    • Same thing happened to me, only in Linux.

      Over a year ago I formatted a 4GB flash drive with the ext4 file system in Ubuntu only to find I could store less than 3.4 GB in it. Ubuntu reports the drive's capacity as 3.7GB but I was never able to store more than 3.4GB in it.
      Great Kahuna
      • perhaps check for block reservations?

        3.7G is what you should get considering the
        difference in bases, so thats no surprise.<br>
        For not being able to put more than 3.4G on the
        drive, perhaps ext4 behaves the same way ext2/3 does
        and by default reservs a number of blocks for root?
        I don't know if it does (I don't use ext4) but it may
        be worth checking.
        emilp
  • They could have simply switched to using **bibytes....

    As far as I'm concerned, the issue isn't that the definition of a kilobyte has been internally changed but rather that the the binary values (e.g. kibibytes) aren't displayed in addition to the decimal ones. Regardless of what is technically correct, the vast majority of the population relies on the binary values. This was not a change that should have been made for an LTS release.

    As someone who dual boots Ubuntu with Windows, I can see this becoming a nuisance rapidly.
    Sephoroth
    • So dump Ubuntu or...

      change the setting. Robin mentions that it's configurable in Ubuntu.
      ericesque
      • That is true.

        I haven't seen the configuration method so hopefully it will be easy for users new to Ubuntu/Linux to change should they wish to do so. The other issue I have with this is the discrepancies it can create when addressing other forms of memory be it RAM, CPU cache, etc. or have the units for these been retitled as Kibibytes?
        Sephoroth
  • RE: Ubuntu fixes disk capacity bug

    The problem is that computers don't work in "proper SI" units. Nor do you, by the way, Robin, with US being the only industrialized nation to use "English" system (curiously, no longer used by the English).

    Reducing everything to the lower common denominator is a sad way to be.
    ibarskiy@...
  • seems like diminishing returns

    If they were going to switch this around, they should have done it LONG ago-- before the difference was industry standard.

    When do you think the average consumer is going to own a Petabyte? My guess is probably never. By the time we're dealing with that much information, it will all be in the cloud. IT groups will be responsible for buying that kind of storage --where the 2base/10base discrepancy is well understood.

    Mac and evidently Ubuntu have only introduced further confusion to a system that as gotten us by for decades. Apple pool of 'Think different' ideas must be getting shallow.
    ericesque
    • 20 years to a Petabyte

      Good question!

      Drive capacities have been growing at about 40% annually, or 5x every 5
      years. If the current average consumer has a Terabyte today, in 20 years
      they'll have almost a Petabyte.

      Hard to believe, I know, but when I started in the industry a Terabyte was
      unimaginably huge - over 1,000 9" disks - and now I have over 10 TB at
      home.

      Robin
      R Harris
      • But is 1TB even average today?

        1TB is certainly accessible and affordable, but I don't believe it's average by a long shot. My guess is average consumer has more along the lines of 500GB in any given machine.

        There are also factors that could significantly slow drive capacity growth. SSD is one. Cloud storage is two.

        SSD will clearly favor performance to capacity for quite some time. With TB SSD costing several thousands currently, PC vendors will likely opt to scale capacities back down into the hundreds of GB range. This becomes increasingly realistic as consumers offload storage needs to the cloud.

        Like I said in my previous post, I think the cloud will end up being people's primary mass storage medium as our storage needs approach the PB mark. This allows the storage vendors to provide the abstraction between the base2 capacities they purchase and the capacities they advertise to the consumer. How the OS cites capacity will be relatively moot beyond a couple hundred TB.

        This is the long way of reiterating that Apple is simply leading a movement to further complicate storage capacity labeling.
        ericesque
      • Re: 20 years to a Petabyte (off topic)

        If you have over 10 TB at home, you are hardly representative of an 'average consumer'.

        I am an IT person - I have 320 GB drive on my home machine (15% used) and a 128 GB SSD on my work notebook (35% used).

        And that is more storage than most of the people that I know.
        techwatcher
      • Petabyte HDD may never exist

        It's still an open question whether the technology will ever allow HDDs to get to a petabyte. The drive manufacturers see one or two major improvements in data density, after which they are scratching their heads on what to do next. To get to such high densities you are starting to get to magnetic domains of a few hundred molecules or less. Just accurately seeking to the proper track becomes a major headache (current platters have tens of thousands of tracks).
        zackers
  • This is sad :'(

    I couldn't disagree more on the subject and I'm very offended to see such an icon like you agree on it. Base 10 is base 10, and base 2 is base 2. I always hated how drive vendors blatantly ignored the binary system which is what computers are ALL about.

    But then again... I'm old-school, and alas, old-school nowadays is just another way to say deprecated.

    So what's next? Computers will "learn" to use base 10 instead of base 2? Will the 8 bit byte become obsolete too in favor of the 10 bit one?

    This is sad :'(
    Alexstrasza
    • Precisely

      The vendors are storing data measured in bits/bytes (8 bits = 1 byte, base 8, not base 10), therefore their storage medium should have used capacities that are compatible with that.

      If stores sold bags that only held 10 ounces of food, you wouldn't expect them to enforce a change that said 1 pound = 10 ounces. It's the storage manufacturers that caused this problem, and it should have been them that complied with the data standards of "power of 2" measurements.

      Trying to use the argument that "it uses Kilo, therefore it should be 1000" is ridiculous. You don't have a mega-metre, or a tera-metre and I'm damn sure it will never be X number of peta-metres to anywhere. It certainly hasn't stopped liquid measuring 1000 millilitres in "Litres", not "kilomillilitres". If the units of measurement/weight/volume aren't compatible with the units of data storage, I don't see what the problem is.

      The average user has no point of reference as to what a Gigabyte actually refers to. To them it's measured in the number of photos it can store, or the number of illegally downloaded MP3's and movies. They don't care that a Kilobyte is 1024 bytes and not 1000 bytes. They don't understand what a byte is anyway. If you're tech-savvy, which seems to count ZDNet bloggers out on most occasions, you know the score, you don't care, you just deal with it.

      Alexstrasza: Look up BCD (Binary Coded Decimal). We used to use base 10 for scoring algorithms years ago in assembler language, it was a complete pain in the backside.
      LeeC
      • Agreed a byte is not a gram or meter

        Computers have always, always been base 2 for obvious reasons. That is what they do, they are on or off. It has always made my hair stand on end that hard drive manufacturers use 1000 instead of the correct 1024. Now RAM manufacturers are doing the same. You buy a two gigabyte stick and you only get 1.8 GIGS or RAM. It has always felt like they have been ripping me off! Now OS designers are changing for what? Just to conform to the ignorant masses? Maybe I'm getting to old, but is writing code you had best remember what a byte is and what a kilobyte is or you will run into trouble fast.

        lrfocke
        Louis Ross Focke
        • WAIT, what?

          RAM manufacturers are doing it? Where on earth do you get that?

          Unless you mean that manufacturers who are known for making RAM do it with their SSD and flash memory... but somehow I don't think that's what you meant.
          ericesque
          • My bet

            is that his onboard video consumes 256 MB of his 2 GB leaving him 1.8.
            blaacksheep
      • Wrong comparison

        Sorry, but your comparison with "Litres" is completely wrong. There are no "Kilomillilitres" because "Litre" is the base unit, just like "Meter", "Volt", "Lumen", or whatever. Smaller or bigger amount get the corresponding prefixes which allways mean the same factor: milli = 1/1000th, kilo = 1000x, etc, etc
        pwcdr
    • Computers work for us, not the other way around

      and we work in base ten.

      Now, since a computer's great advantage is in its calculating ability, it is
      just plain silly to force us into an unnatural mode of thought simply to
      accommodate the machine. Or the programmer.

      Every other engineering field uses base 10. Get over it.
      frgough
    • Agreed. Now, does my computer have 4.3GB of RAM?

      Disk sizes are somewhat arbitrary since they are not accessed with address lines like RAM, so I suppose disk manufacturers have the choice to use base 10, but it has always irritated me. For crying out loud, what gets read and written to the disk but blocks of RAM! Anything but a binary based measure of address space or the size of RAM makes no sense. Computer makers will, no doubt, be thrilled to advertise inflated RAM numbers.

      If operating systems are going to start quoting sizes in decimal, they should do it with an optional geek switch.
      mark.hill.smt