Ubuntu Will Switch To Base-10 File Size Units In Future Release 984
CyberDragon777 writes "Ubuntu's future 10.10 operating system is going to make a small, but contentious change to how file sizes are represented. Like most other operating systems using binary prefixes, Ubuntu currently represents 1 kB (kilobyte) as 1024 bytes (base-2). But starting with 10.10, a switch to SI prefixes (base-10) will denote 1 kB as 1000 bytes, 1 MB as 1000 kB, 1 GB as 1000 MB, and so on."
Cannonical is just trolling us (Score:5, Funny)
First, screwing with GUI buttons, now this? Mark Shuttleworth, I'm calling you out on your BS
;)
Re:Cannonical is just trolling us (Score:5, Informative)
If you read closely, you'll see that the summary is kind of misleading. What canonical is actually doing is using SI prefixes for base-10 units, and IEC prefixes for base-2 units.
In other words, they will use 1kB for 1000 bytes and 1KiB for 1024 bytes. This is a good thing, it just means the UI should be consistent and you don't need to second-guess.
Re: (Score:3, Insightful)
It was never defined that way!
"kilo" has always meant "1000". That is the way that IT is DEFINED.
Mod parent up (Score:3, Insightful)
1kB was never defined as 1024 bytes. People just started calling 1024 bytes as 1kB because it was close enough, and on one cared about being 2.4% off. Unfortunately as everytime we leap another 10^3 we're off by another 2.4%, and by the time we get to 10^12 we're off by 10%.
Re:Mod parent up (or not) (Score:5, Interesting)
Perhaps it was not defined as 1024 bytes everywhere (comp sci types are notorious for having multiple standards), but it was defined as 1024 bytes in a fair number of places.
Re:Mod parent up (Score:4, Informative)
It only looks that way because we aren't leaping by 10^3, we are leaping by 2^10.
Except that the hardware doing the "leaping" are the hard drives that are measured in base 10, so we are "leaping" by 10^3.
The byte itself is 2^3.
First of all, a byte is not always defined as 2^3, it depends on the architecture (you are thinking of the octet, which on most common hardware is equivalent to a byte). Also, the size of a byte is not governed by SI prefixes as it isn't a prefix. Applying an SI prefix to the byte should still follow SI prefix rules.
Notice any similarities?
I noticed that 2^3 is 7 orders of magnitude off (in a power of 2 system) being a match to the 2^10 convention. The only reason 2^10 is chosen is because it comes close enough to emulating 10^3. Why emulate when you can just use 10^3 directly?
If manufacturer's didn't try to fudge their numbers by breaking convention, a "300gb" drive would actually show up as 300gb exactly in your computer.
While it might be a convention to use 2^10, it's not the SI standard (so it shouldn't try to redefine SI prefixes, it should use it's own system). Also, on my computer it does report as 300GB in the partitioning tool that I use (cfdisk).
You keep coming back to the byte being 2^3. This is a somewhat silly argument as the byte is the smallest addressable unit in RAM. The size of the byte itself is largely irrelevant to the discussion of the prefix definition.
Re:Cannonical is just trolling us (Score:4, Insightful)
Maybe for all the physicists, chemists, and engineers; but has kilo never meant 10^3 for computer programmers, computer engineers or computer scientists. Same with mega- giga- and so one. They have all each had a very specific meaning in the base 2 number system, which is ultimately the most important base system for people working with computers.
We don't have 10 hours a day, 10 days a week. We don't have 10 bits in a byte or 100 degrees in a circle. I'm a huge proponent of the SI system but only in areas where it is appropriate to apply it. Lengths, weights, magnetic flux density, all fine. But there are many applications and areas which are not appropriate to shoehorn into the decimal system. Binary computer memory sizes are one such application. It is not appropriate to group base 2 numbers using a base 10 units.
Re:Cannonical is just trolling us (Score:4, Interesting)
Moreover, why would it make any more sense to use KiB than KB for things like file sizes other than purely historical reasons? A file is a sequence of bytes of arbitrary length with no grouping whatsoever. It's just a sequence. I wouldn't mind using SI units when dealing with hardware that is already specified in SI units to begin with.
Re:Cannonical is just trolling us (Score:5, Insightful)
What do you mean never? "Kilo" has always meant 10^3 for HDDs, likewise for mega, giga, etc.
Sorry, you're wrong; disks used base-two definitions, too. A 360K floppy is 362,496 bytes formatted, and a Seagate ST-225 20 megabyte hard drive had a little over 21,000,000 bytes formatted. It wasn't until some hard drive manufacturer couldn't quite hit a gigabyte that they redefined "gigabyte" so that they could call their 976MB drive "1 gigabyte."
Re: (Score:3, Insightful)
Computer memory, in an abstract sense, tends to be looked at in a hierarchical way:
* Registers
* Caches
* RAM
* Secondary storage (swap)
A filesystem is a datastructure, arguably just nominally imposed on a dedicated swap-space of sorts.
When you buy a gig of RAM, you expect 2^30 bytes, not 10^9 bytes. I've never understood why HD think that their "secondary storage" does not belong under the paradigm of "computer memory" when talking about sizing, despite the fact that all modern OS's use swap space, and files
Re: (Score:3, Interesting)
Re:Cannonical is just trolling us (Score:4, Insightful)
1 kb on your disk is usually defined as 1024 bits... but 1 kb/s is usually defined as 1000 bits/second. As an example, a 1.5 Gb/s SATA interface is running with a 1.5 GHz clock, so it will transfer 1500000 bits per second (actually, the number of effective bits will be lower as it uses 8b/10b balancing).
Re: (Score:3, Interesting)
Well, it depends on what you are talking about. The situation is not as clear cut as you depict it.
1 kb on your disk is usually defined as 1024 bits... but 1 kb/s is usually defined as 1000 bits/second. As an example, a 1.5 Gb/s SATA interface is running with a 1.5 GHz clock, so it will transfer 1500000 bits per second (actually, the number of effective bits will be lower as it uses 8b/10b balancing).
That's false.
1 kb/s is defined as 1024 bytes per second. 1 kbps is 1000 bits per second, as is 1 kbit/s. If someone has sold you a 1.5 gb/s SATA interface, they have robbed you blind, as the fastest SATA interfaces in development only run at 6 gbit/s, which is about 40% the speed of your 1.5gb/s interface.
This [wikipedia.org] might help you out a little bit.
Re:Cannonical is just trolling us (Score:5, Insightful)
But there are many applications and areas which are not appropriate to shoehorn into the decimal system. Binary computer memory sizes are one such application. It is not appropriate to group base 2 numbers using a base 10 units.
I agree entirely. However, SI prefixes *are* in base 10, and just redefining them in specific contexts to mean something in base 2 is unnecessarily confusing. Kilo is accepted to mean thousand, and redefining it in specific contexts to mean 2^10 is just unreasonable. To use your phrase, it's not appropriate to shoehorn this system of decimal prefixes into describing a naturally binary system (which is precisely what happened in CS).
I understand it's how we've been doing things for decades, but why on earth are so many CS people arguing *against* decreasing ambiguity? I find the whole KiB thing to be a relatively elegant solution, which maintains the familiar letters so there's nothing new to learn, but makes it clear what units you're using. The only reason to resist it that I can see is just blind and unthinking resistance to change -- the exact same reason so many people resist the metric system and SI at all.
You seem to be arguing "if it ain't broke, don't fix it", but I think it is a little broke and we should fix it.
Re: (Score:3, Insightful)
Bytes (or bits) are not SI units.
Then why use SI prefixes? More generally, why use prefixes with established and well-known definitions to mean something else? It's confusing. (And it's entirely irrelevant that bytes aren't an SI unit.)
The ambiguity is introduced by those people saying it should instead be 1000 kb.
Make no mistake, the ambiguity was introduced by the people who used "kilo" to mean 1024. Blaming the people who hear "kilo" and think "thousand" is just silly, because thats what the prefix actually means. My whole point is that using kilo (and the rest) to mean something special in specific contexts is amb
Re:Cannonical is just trolling us (Score:4, Informative)
SI doesn't own kilo, Greek does.
The metric system is based on powers of 10. Oddly enough, kilobyte is based on 10 powers of two. Now, you say that isn't the same thing, and you're right. That's because decimal doesn't mesh well with binary, but we understand decimal much better than we do binary.
Kilobytes, megabytes, and gigabytes are metric representations of binary. 2^10, 2^100, 2^1000, it's the exact same concept. That's why the chose to use kilo, mega, and giga in the first place - because it is conceptually the same thing, and just as easy to understand if you know what it actually means.
disk makers have been using kilo to mean 1000 for years, and it'll probably never be really sorted out.
That's because disk makers have been trying to make their disks look bigger than the actually are for years. Coming up with a new unit that nobody understands, which fucks with the entire nomenclature used throughout the computer, all to accommodate hard drive manufacturers as they try to convince you that they are selling you more than they actually are, is fucking retarded.
Whoever came up with the kibibyte probably works (or worked) for a hard drive manufacturer.
Re: (Score:3, Insightful)
No, the concern is because the new binary prefixes are awful. "Kibibytes"? [kibblesnbits.com] You gotta be kidding me. I am not using that word in public. If they'd come up with some non-ridiculous-sounding names people would fall in line.
Re: (Score:3, Interesting)
Actually 1024 ohms definitely is a perfect 1 kilo ohm resistor, worthy of a gold fourth stripe.
Citation [wikipedia.org]
Re: (Score:3, Insightful)
Re:Cannonical is just trolling us (Score:4, Insightful)
There has never been a point since the introduction of the 1024 "binary k" prefix that you didn't have to second-guess. RAM was different from disk, before that communications was already using SI kilo (or I should say, what would become SI kilo, since they predated the codification of SI).
The "binary" prefixes have always been problematic and don't help new people entering the field to understand anything, so they ought to go, or at least be segregated out so that there can be no confusion.
Re:Cannonical is just trolling us (Score:5, Insightful)
when the C64 came out with 64K No-ONE doubted it had 65536 Bytes of RAM. if it would came out now, there would be confusion, so the kibi-business introduced confusion. people who don't understand the difference between binary and decimal have no place in IT
Re:Cannonical is just trolling us (Score:4, Funny)
And there was me, with 38910 BASIC BYTES deeply ingrained into my brain...
Re:Cannonical is just trolling us (Score:5, Insightful)
when the C64 came out with 64K No-ONE doubted it had 65536 Bytes of RAM
No kid playing with his first or second computer, anyway. Old hands used to dealing with memory measured in kilowords (with the standard SI meaning of "kilo") would have had to ask. They might have had to ask how big a byte was, too. There's a reason standards call them octets, you know.
You just think this is some kind of carved-in-stone standard because it's what you were first exposed to.
Re:Cannonical is just trolling us (Score:4, Insightful)
I disagree. It is not a matter of knowing about math. I should be able to interpret any measurement just by knowing what each unit stands for, I shouldn't need any deeper knowledge about math or history of computing. Because then I will be lost trying to interpret numbers from other fields, from other countries, etc and the whole point of the SI is to have a global standard.
Someone somwhere just ignored the proper definition of kilo and redefined it as 1024 and then most of us have continued that mistake. I see no problem in correcting this once and for all. It seems silly that trying to correct the problem would upset people.
Re: (Score:3, Informative)
If you're talking about "communication" terms like megabits, this is because the base is 'bit', not 'byte'. The confusion only exists when you're talking about bytes. Anything dealing with bits has always been base-10.
Re: (Score:3, Interesting)
Anything dealing with bits has always been base-10.
Really? Memory chips came in decimal units?
I thought I'd left that behind with the IBM-1620 (20,000 digits) and Univac SS-90 (5000 words).
Re: (Score:3)
And while "baud rate" is now tacitly accepted as a term, baud already includes the unit of time. Saying "baud rate" is like saying "symbols/time/time" as if the data rate is accelerating. 2400 baud is already equivalent to 2400 symbols/second. /pedant
(re-reading your post, I think you understand this but I think the distinction is important)
Re:Cannonical is just trolling us (Score:4, Informative)
1kb never was 1024 bytes. It is either 128 bytes or 125 bytes. 'b' is bit, 'B' is byte and that distinction is rather important.
Re: (Score:3, Informative)
Re: (Score:3, Insightful)
Which, unless otherwise specified, we assume we are.
Re:Cannonical is just trolling us (Score:4, Funny)
Actually 'B' is 'Bel' like in decibels - dBs. So kB is kilobels etc. This causes me no end of confusion as I wonder why hard-drive manufacturers are measuring drive capacity on a logarithmic scale compared to some unspecified standard size.
I think we should decimalize completely, remove the confusing 8-bit byte and introduce a new 10-bit unit called a "dyke".
That way there'd be no confusion.
Re:Cannonical is just trolling us (Score:4, Informative)
a few years ago you didn't need to: 1kb was 1024 byte. it was defined like that.
No, it wasn't. It meant, variously: 1000 bytes, 1024 bytes, 1000 bits, 1024 bits, or "approximately 1000 bits/bytes". There was also the goofiness that if you transferred at 64 kbps for 10 seconds, you ended up with 62.5 kb, and when you formatted your 10 GB hard drive, you ended up with only 9.3 "GB" of space.
It confuses ordinary people for no good reason.
Re:Cannonical is just trolling us (Score:5, Insightful)
Re:Cannonical is just trolling us (Score:5, Funny)
Kibibytes always makes me think of cat treats.
Is that what we want? More lolcats in our hardrives? Fuxxoring up our filesizes?
Re:Cannonical is just trolling us (Score:5, Funny)
Mebi? Or mebi not.
Re:Cannonical is just trolling us (Score:5, Insightful)
I am more confused by people mixing b (bit) and B (Byte).
Re: (Score:3, Insightful)
a few years ago you didn't need to: 1kb was 1024 byte. it was defined like that. why don't we define 2 as 1 and 1 as 2 next ?
Who modded that as insightful? 1kb was never 1024 byte. It varied between 1000 bits = 125 byte or 1024 bits = 128 byte, but it was never anything near 1000 bytes. As Shuttleworth said, Ubuntu is not controlled by democracy. I'll say it shouldn't be ruled by idiocracy.
Reporting 1 KB = 1000 bytes also fixes the annoying thing that a line transferring 1 MB/sec (which _always_ meant 1 million byte per second) supposedly doesn't manage to transmit 1 MB of data within one second. (Yes guys, bandwidth was _alwa
Re:Cannonical is just trolling us (Score:5, Insightful)
Other posters have pointed out that bits and bytes are not SI units, but they've not pointed out that we use 1024 because it's more useful. We use base 10 for physical quantities because it means that you can very easily do base-10 logarithms and most arithmetic on physical quantities is easier if you can do logarithms on the base that you use in your head.
Storage is always indexed by some binary quantity, so you need to do base-2 logarithms. You can trivially calculate how much space a 32-bit address space gives you: 2^32 bits, divide the 32 by 10 gives you 2^22 KB, 2^12 MB, 2^2 GB, 4GB. Try doing that with 1KB = 1000B in your head. You can easily tell how much space your 32-bit filesystem can store if it is addressing 512B blocks (the size of most hard disk blocks). 512 is 2^9, so it's 2^9 x 2^32 bytes. Add the exponents and you get 2^41 byes, or 2TB. What happens if we start using 4KB blocks instead? Well, 4 is 2^2, K means 2^10, so 2^12 x 2^32 = 2^44, or 16TB.
Redefining KB makes these calculations harder. The only kind of calculations it makes easier are things that involve bytes and some other SI units that use the SI prefixes in the same equation. About the only other SI quantity that you ever see in an equation with bytes is seconds and you almost never talk about kiloseconds or megaseconds...
Re: (Score:3, Insightful)
The end user and even most professionals in the field will never need to do this kind of math. This might be an issue for people who work with storage and address space but after you are done with that there is no need to worry about binary for the rest of your day and no need to force the rest of the world to redefine units just because it makes your calculations easier.
Re: (Score:3, Insightful)
why does the It industry get special treatment. I thought the IT industry was one of the industries that wanted to use established standards the most for interoperability. Then you say the the IT industry want to go against the established standard for something that is really really really insignificant and you would all get used to it in about 2 months after the switch
Re:Cannonical is just trolling us (Score:4, Insightful)
Exactly. Dont give in to the mistakes of HDD manufacturers and legalize their wrong advertising.
Doesn't pint/quart/gallon differ according to geography. Pint [wikipedia.org], Gallon [wikipedia.org] and so on.
This article and this time of year piss me off.
You're exactly right. We don't suddenly re-define an established standard. And when it comes to physics, we don't suddenly re-define time...like every year when the stupid US government decides that it's magically an hour earlier or an hour later.
When I make a cake, I don't use 1 cup of flower and then decide to make bread, so I redefine the size of 1 cup to make reading the recipe easier...
Re:Cannonical is just trolling us (Score:5, Funny)
I am glad for everyone who might eat your baking.
Re: (Score:3, Insightful)
The process you just went through is well known to psychologists. It is called "objectification". That is the process by which you mentally reduce the person you disagree with to a non-human status so that you can disregard them. If done well you can kill them without guilt because they are, in your mind, not a real human. Some good examples of objectification can be found in the history of WWII. The Nazi propaganda concerning Jews, and American propaganda about the Japanese are great sources.
BTW, you might
Re: (Score:3, Funny)
Stonewolf you lose.
"...Hate speech becomes hate speech by being use by the haters. That is the same way your favorite words have come to be hate speech."
It goes the other way too.
And quit the psycho analysis, you suck at it.
For the record, I deny the word 'gay' is hateful in the context used today in this forum, and so does the lesbian sitting next to me.
Re: (Score:3, Insightful)
You have pretty much hit the nail on the head alluding to Mr Shuttleworth's "open source is not a democracy" comment. When something as simple as whether 1000 or 1024 should be used causes such dissension. In effect, this is meaningless. Pick one and life goes on. It becomes the norm. Simple. Done. Over. And everything works fine.
But no. In such a technically meaningless semantic discussion there is still dissension how many years later?
Thing is (Score:4, Insightful)
Re: (Score:3, Insightful)
Re:Thing is (Score:5, Insightful)
Actually, they are. This is most likely for the exact same reason as apple likely did it –reduced support costs. They don't need to deal with shit tons of people complaining that their 1000GB disk isn't 1000GB, it's only 931.3GB.
Along with of course the most obvious reason – it's *correct* that way.
Re:Thing is (Score:5, Insightful)
And they accomplish this by measuring wrong? Great effing job!
Wrong? By who's standard, the SI standard, the ISO standard and the IEEE standard all agree on this point.
ubuntu joins apple... (Score:5, Insightful)
Apple did this with Snow Leopard, which makes me a cranky geek.
Why can't the OS manufacturers pressure the hard drive companies to market their sizes correctly? =(
Re:ubuntu joins apple... (Score:5, Insightful)
HD manufacturers are presenting the sizes correctly. SI prefix = hard-defined base-10, it's just computer engineering and computer sciences that broke the established standard.
Re: (Score:3, Interesting)
err, kilo have been a SI prefix since 1795. And mega, giga and tera got defined in 1960.
Re:ubuntu joins apple... (Score:5, Informative)
he kilo prefix is derived from the Greek word ("chilioi"), meaning thousand. It was originally adopted by Antoine Lavoisier and his group in 1795, and introduced into the metric system in France with its establishment in 1799.
So while "SI" wasn't around. It was already as established standard
Re:ubuntu joins apple... (Score:5, Funny)
So yes, SI as base-10 precedes the standards-breaking use among computer engineers and computer scientists by well over 100 years.
Wait a second. Are you talking 100 years, or 102.4 yirs?
Re:ubuntu joins apple... (Score:4, Interesting)
Re: (Score:3, Insightful)
Re: (Score:3, Interesting)
Re: (Score:3, Interesting)
It wasn't that it made sense, it was that on an old CPU, dividing by 1000 was a ~600 cycle operation – there wasn't an op on the CPU to do it, you had to emulate it in software. Dividing by 1024 meanwhile was a 1 cycle operation - right shift 10 bits.
There was no "it makes sense to do this wrong", instead it was "this is wrong, but it's so much more efficient, that at the moment, we have to be inaccurate". I'm sure if the people who originally did it realised the quagmire we'd be in these days they'
Interesting (Score:3, Interesting)
I find it interesting that operating systems are headed in this direction, while SSDs are becoming more and more popular, and which (for the most part) use base 2 measurements.
It looks like both Apple and Ubuntu are trying to get consumers to think that they use less disk space.
Re: (Score:2)
Re: (Score:3, Informative)
Yes, I may have been wrong with "for the most part," but there are definitely some (at least one) manufacturers who are advertising capacities with base 2 sizes. OCZ (one of the biggest vendors of SSDs), for example. Their "120GB" drives are 121.60 GB, and I assume they're actually the same size as other companies' 128GB drives. What I was getting at was both industries have started to "cave" at the same time, so we still aren't sure which way we're going.
Why? (Score:2, Troll)
Why?
To excuse hard drive makers for using this stupid format to grown their number artificially?
Hopefully this doesn't affect the command line... only gnome, right?
Re: (Score:3, Interesting)
Why?
Because any calculation involving a mixture of different prefixes is pointlessly difficult when using pseudo base-2. For example, your file manager reports that a memory stick has 1.20GB free space, and it reports that you have two 613MB files. Will they fit on the disk? If the apps use stupid pseudo base-2 numbers, you have to dig around for a calculator. If instead the apps use base 10 like you've been trained to use since early childhood, the answer is obvious.
Moreover, contrary to the common misperc
Re: (Score:3, Insightful)
Harddrives and floppy disks aren't bound by base-2 in the slightest.
A floppy disk is a great example, a track can have any number of bits stored on it. The OS cuts that track into sectors of whichever size it wants, this is *arbitrary*. Because of sector encoding on floppies, it's impossible to read only part of a sector... you have to read the entire sector. Early computers made sectors the same size as a page of RAM in order to load an entire sector into a sing
Annoying... (Score:2, Insightful)
Re:Annoying... (Score:5, Informative)
Because the context is a problem every time you mix computers and what you're doing on a computer. Let's say you record a CD, 16 bits/sample @ 44.1kHz. That's a bitrate of 16 * 44.1 = 705.6 kbit/s second right? If I want to send it over the LAN too? What if I need to allocate a memory buffer, is it still 705.6 kbit/s? And what if I want to store it to disk, do I need to allocate 705.6 kbit per second of music? Computers aren't not remotely consistent with themselves, a 100 Mbit LAN is 100,000,000 bits/second. Hard drives too but they're hardly the only ones, floppies weren't even consistent with themselves most being 1.44*1000*1024 bytes.
Things get confusing all the time because a 1 MB, 1 KHz (1024*1024*1000) bus is not equal to a 1 kB, 1MHz bus (1024*1000*1000) which is why everyone dealing with networks never used kilo = 1024. The 56k modem is 56,000 bits, ISDN is 64,000 bits and so on right up to SATA 6Gbit/s which is 6,000,000,000 Gbit/s (and even more confusing because it's in 8/10 bit encoding, but that's another story). So both inside and outside the machine we're switching between base 2 and base 10 all the time.
A particularly confusing item was codecs. Should they follow the "size" standard so a 128 kbit/s MP3 would take up 128 kbit/s, or the network standard so that a 128 kbit/s would take 128 kbit/s of network bandwidth? I think now most settled on k = 1000, that is to say if you encode a one second clip at 128 kbit/s it'll only take up 125 kbit on your disk. Confusing as fuck? Hell yeah. Let's just settle this and be done with it, with the i = base 2, without it base 10. Just forget the lame names, and let the prefixes do the talking. MB = megabyte, MiB = megabyte. That's what I'm doing at least.
Re:Annoying... (Score:5, Insightful)
Really annoying (Score:5, Interesting)
I work mostly on OS X and this so-called feature annoys me to no end. I do not know the size of my files anymore, I have to go to the terminal just to know the size of a file (bash hasn't been polluted by this feature).
I've been using computers for 20+ years and I do _not_ want to change how I think file sizes, especially since I feel that base 10 is the wrong way to count. What's next? Imperial units for us Europeans?
The most annoying? That nobody has hacked Snow Leopard to restore real units.
Re:Really annoying (Score:5, Funny)
What's next? Imperial units for us Europeans?
Hell no. Imperial units for file sizes. A byte will be twelve bits, a kilobyte will be 3 bytes, and a megabyte will be 5280 bytes. A petabyte will be 5.87849981x10^12 megabytes. There won't really be such things as terabytes or gigabytes, which will make drive manufacturers happy because most of their drives are measured in TB or GB.
Re:Really annoying (Score:4, Insightful)
I've been using computers for 20+ years and I do _not_ want to change how I think file sizes, especially since I feel that base 10 is the wrong way to count.
How is it possible you survived working in IT for over 20 years and not being able to adapt to radical changes? These sort of things happen all the time. One moment you're working from LSB upward, then you're suddenly working from MSB downward. 8 bit changed into 16, into 32 and now in 64. Filenames can't be longer than 8 characters and now they can. A file can't be larger than 4 GB and now it can. And now finally, operating systems are beginning to understand SI units (which we've been using for all sorts of applications for hundreds of years) and *THAT* is a problem?
What's next? Imperial units for us Europeans?
A better comparison would be using metric units in the US, because metrics are based on SI and imperial units are more like the weird way bits and bytes are counted into kilobytes, megabytes etc.
Saying that 1024 is a kilo never made any sense to anyone. I'm really glad we're finally entering an age where computers represent datasizes in units people can understand.
Re: (Score:3, Insightful)
To anyone except the countless people who actually knew their way around computers and what they were doing. Flexiblity to adapt to situational changes of a field has nothing to do with idiots changing the nomenclature of a well established technical, engineering and scientific field because they can't fathom words can mean different things in different fields and contexts.
Re: (Score:3, Insightful)
What's next? Imperial units for us Europeans?
Quite the opposite. The imperial units are the base 2 ones. After all, kilo means 1000, not 1024, both in the original Greek and in the SI system that most of the world uses.
The HDD manufacturers were right (albeit for all the wrong reasons, of course). Good for Apple and Cannonical for recognizing this. I hope the rest of the world follows suit and becomes (SI, IEEE, ISO/IEC [wikipedia.org]) standards compliant.
Re: (Score:3, Interesting)
You know, that's the same argument Americans use for not adopting metric.
Re: (Score:3, Insightful)
Actually, it's more like changing from the imperial system to the metric system. Sure, the imperial system's conversions made sense in the context that they were created, but for a sense of consistency and predictability, you can't beat base 10 metric.
Re:Really annoying (Score:5, Funny)
I feel that base 10 is the wrong way to count.
You must have a horribly difficult time in this world.
Re: (Score:3, Informative)
I've been ... for 20+ years and I do _not_ want to change
People like you are best ignored.
It's what people use naturally (Score:4, Insightful)
If you went to the terminal and saw this file
file.big 17,179,869,184
I suspect that you would naturally say that that file is about 17 gigs. Actually, it is 16 GiB exactly.
However, just looking at the file, no one would ever instinctively say that file.big is 16 GiB. The reality is that base-10 is what people naturally use and so it makes sense for the user interface to reflect that.
Just use the right prefix (Score:5, Insightful)
As long as they use the correct prefix, I don't really mind whether they use base 2 or 10 to display the numbers.
RAM sizes are naturally powers of 2 due to how the individual memory cells are addressed, so it makes sense for RAM capacity to always be listed in GiB.
Hard drives, on the other hand, have nothing that is fundamentally based on a power of 2. They arbitrarily use a sector size of 512 (or 4096) bytes, but everything else (number of heads, number of tracks, average number of sectors per track) has no power-of-2 connection. Therefore there's nothing wrong with reporting their size in SI notation.
The original shorthand of calling 1024 bytes a "K" was not too bad because it's only a 2.4% error. However the error gets worse as you go up each level, and by the time you're talking about a TB/TiB it's something that people actually care about.
Re:Just use the right prefix (Score:4, Informative)
Hard drives, on the other hand, have nothing that is fundamentally based on a power of 2.
Well--except that pesky material on the surface of a disk that can store either a '1' state or a '0' state. Most people call that a 'bit'. Strangely enough, that 'binary' state is conducive to measuring in powers of two...
Re:Just use the right prefix (Score:5, Informative)
Sorry, 512 or whatever base-2 sector size is not arbitrary - the disk controlling hardware / buffers / controllers / channels / etc and especially the transfer sizes, multipliers in headers, and so on are (still) base-2. If you ever do performance / capacity calculations or estimates for storage size, etc, you very fast find base-2 very handy.
The disk size error is not a big deal - there always is an overhead that changes by storage type, file system, fixed physical characteristics, key / data compression used, replication, whatever - so? The public (and I think many in IT) really don't know and/or have to know more than if they have enough or need more!
Re: (Score:3, Funny)
I'd prefer they not display numbers in base 2. Reading a long string of ones and zeroes is difficult.
Re: (Score:3, Informative)
Well that's not true in the slightest.
Let's look at the Apple II floppy disk, just because I happen to have actual stats on that from writing an emulator.
The only part that's base-2 is the amount of data in a sector. 256 bytes.
That 256 bytes is encoded in "6-and-2" encoding, making it actually take up 342 bytes on disk. Not base-2.
There are 74 bytes of sector header, and self-syncing data attached to that, making each sector actually take up 416 bytes on di
Bye Ubuntu, was nice knowing you. (Score:5, Insightful)
Change the GUI window buttons from right to left? Meh. Change the way file sizes are read so that User X and User Y see different file sizes using the same filesystem, even potentially the same remotely mounted disk?
Now I have to draft a letter to our research department telling them to stay the hell away from Ubuntu because their data will potentially be wrong (unless they take pains to remember the kilo=/=kibi switch).
Re: (Score:3, Insightful)
If your research department... ...then maybe you (or rather the person in charge) need to educate your research department on these matters, rather than compiling a list every month of operating sys
1. Doesn't work in bytes
2. Doesn't know how to tell the difference between kB/MB/GB/TB and KiB/MiB/GiB/TiB
Re: (Score:3, Informative)
I read the policy and consider it correct.
There are two ways to fix the abuse of the SI standard for base-2:
So, use the IEC prefixes and you don't need to change much. Its just a little i.
Furthermore, this was approved in 1998. Don't you think you had enough time to adapt by now?
http://physics.nist.gov/cuu/Units/binary.html [nist.gov]
I'm sure there are more distros and programs implementing this.
Good move (Score:5, Insightful)
SI prefixes are defined as base-10, period. Every other use is simply wrong.
Being consistently wrong for a very long time doesn't make it better, it is just proof of
an unwillingness to admit to a stupid initial mistake you didn't even make yourself.
As nerds, you're supposed to be better than that.
How can you be all for standards-compliance with browsers and rile against a much
stronger, decades-old ISO standard (which is based on a centuries old definition from the
beginning of the metric system - "kilo" has been 1000 for over 200 years)?
On the other hand, you are the same crowd regularly writing about "mbit/s" while meaning "Mbit/s",
thereby being off by just a tiny, unimportant, paltry factor of a billion.
Seriously, what's wrong with you?
-- an annoyed scientist
Re:Good move (Score:4, Insightful)
Before, the situation was simple.
Everything not binary-represented-information related used base-10.
Everything binary-represented-information related (computing related, bandwidth related etc) used base 2, because the
most important thing is how much information is being passed around or stored, and base-2 is the natural unit for
measuring information, which comes in bits, and whose complexity is related to powers of the number of bits.
Re:Good move (Score:4, Informative)
Before, the situation was simple.
Everything not binary-represented-information related used base-10.
Everything binary-represented-information related (computing related, bandwidth related etc) used base 2,
According to Wikipedia, big bandwidth [wikipedia.org] is measured in base 10.
I guess it was not so simple after all.
This is the right way to do it (Score:4, Interesting)
And even in the metrically challenged USA, SI happens to be the law. Imperial units are only allowed in addition, but prefixes must be SI. If you don;t believe me, look up your own laws before shooting off your mouths.
The rule actually is that anything measured must use SI prefixes and units (in the US and some other backward countries some historic units may be allowable besides SI units, but prefixes are the law even there) when sold, i.e. the HDD manufacturers are prohibited by local and international law from using base 2 units as the only or main size statement. If they do, that would be fraudulent. The only thing that would save them is that it is permissible to give the customer more than stated.
So how do RAM sizes come into this? Simple: A RAM size is not a measurement. It is membership in a size class. While a HDD can have an arbitrary size (well, modulo 512, but that is a detail with todays sizes), RAM cannot have other sizes than powers of 2 and hence a statement like 1MB for RAM is a statement of membership in a specific size class and not a measurement. (Incidentially, 1mb is 1 mili-bit, i.e. 1/1000 of a bit. Get this right or be regarded as a moron!)
I do not understand why so many people cling to a mistake. Grow up!
And I thought geeks were supposed to be FLEXIBLE (Score:3, Insightful)
Many computer nerds like to tout themselves as geniuses who have flexible minds. But the truth is that we're all afraid of change. And this switch from KiB to KB is change. It's not what you're used to, so it's going to confuse you.
But as a geek myself with an obsession for clear and precise terminology, I welcome the change. No longer will I wonder if someone's talking about KB vs. KiB, because it'll be consistent and explicit, at least on the computer systems developed by flexible-enough-minded people who are both willing to change and willing to correct a long-confusing problem.
It's true that the HD makers have taken advantage of this confusion. Back in the day when people almost always said KB when they meant KiB, HD makers used KB. But the fact is, once we adapt our terminology to be less ambiguous, we really can't be mislead by them anymore, and their deceptive marketing practices will be moot (at least when it comes to bytes of storage).
So, to summarize, stop being a stick in the mud and learn to adapt to change. Computers are and always have been an aspect of change in our society. Get over it and get with the program.
Re: (Score:3, Insightful)
I’s not about being flexible. It’s about not being retarded.
We are the experts on the subject. We know better. Period.
So for someone to tell us how our computer should work, it must be someone who is even more of an expert.
A standards committee is not someone like that.
The simple fact is, that all computers nowadays are base 2. So for the numbers to be useful, they must also be base two. Half your ram, hard disk, cache, display resolution, data rate, etc, will always be a nice round number in ba
Re: (Score:3, Insightful)
There's no need. We can just use our own OS that will work as we want it to.
Re:And I thought geeks were supposed to be FLEXIBL (Score:3, Insightful)
As a geek, I am in favor of change... for the better. Geek and pedantic troll are not synonymous. I do not care about grammar distinctions that do not add a useful and functional clarity just for their own sake. I do not support changes to existing well defined and well understood prefixes unless there is a purpose.
Satisfying the anal few by implementing technical correctness of a prefix is NOT a fair trade for breaking every spec of existing computer literature and the majority of software. It is not a val
locale (Score:3, Funny)
May I humbly suggest that for locale C, we retain the base-2 prefixes. Then for POINTLESS_PEDANT locale, use SI prefixes. To specify base-2 prefixes without maintaining the rest of the C locales semantics, I recommend GET_OFF_MY_LAWN. Or maybe just an environment variable to indicate DISK_MANUFACTURERS_ARE_GREEDY_BASTARDS with 0, empty or non-existence assuming you have traveled back in time or are living in denial.
Base-19 which base (Score:4, Funny)
The number 10 is different depending upon which base you use.
There are 10 types of people, those who understand binary, and those who don't.
Re:Base-19 which base (Score:4, Funny)
Finally!!!! Metric bytes (Score:4, Interesting)
Finally they've seen sense and will switch to the metric ten-bit byte.
I'm fed up of this short-changing every time I use a byte! I'm sure the memory companies will harp on about how it will increase costs by 25% but they've had an easy life for years.
If God had meant us to program with 8 bits per byte, he'd have given us 8 fingers.
Re: (Score:3, Informative)
The only people who lie about this have been the HDD manufacturers. Wasn't there a class action about that some time back? I expect the court didn't understand the problem of my 120GB drive actually being under 112!
It seems the court understood the matter very well and decided that when a hard drive contains 120 billion bytes, and the prefix "G" means "1 billion" as all international standards say, then calling it a "120 GB" hard drive is absolutely justified and correct, and it is not the hard drive manufacturer's fault if some idiot programmer displays it incorrectly as 112 GB.
Re:But its WRONG! (Score:4, Interesting)
In computers, there are critically important reasons why base2 is used (transistors act as electronic switches which have two states: on and off). Wiring buses in computers (address lines, data lines) are base2, with the electricity being on or off. When data is read and written on the hard disk, its done in a binary format. When searching for data on a disk, its either a binary search, or the equivalent of a binary search (divide and conquer) algorithm used to find data, with O(log n) search time. Please don't dumb it down. We don't need to dumb it down. Its not that the computer is to compl-cated, its that the user is too dumb. Users have been suing drive manufacturers who have been lying to people like this. I expect data to be stored this way. Two wrongs don't make a right (it takes three lefts for that), but I digress, don't change it. DON'T!
FIrst off, young sprat, I've used decimal hardware. So are you going to force me to say 1KB is 1024 even though it makes no sense on that system?
Second, I've used disk drives for other purposes than computers - data logging using dedicated hardware. Why should I be tied to your computer idiosyncrasies? Mass storage was around before computers settled on binary. It has always used decimal units. You are making a common mistake - assuming that because something is some way now, that it was always that way.
Third, if base two is so critical to computers, then how many Hertz are in 1 MHz?
And finally, I'm now working on ternary logic. Storing information as 3^N is already inside some devices you're using, so maybe binary is not so critical after all.
Re:And the pussification/retardization... (Score:4, Funny)
Yeah, I really hate when the tools are use daily are made more standardized and sensible. I mean really, I know how you feel. I was RAGING the day I worked on my first motherboard that didn't require me to fiddle with jumpers and man, oh man, I about blew a gasket when I didn't have manually configure my autoexec.bat file anymore so I could play games.
What the fuck is wrong with people trying to make computers accessible? Fucking pussies and their keyboards and their mice. Gimme my damn punch cards!