Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Matek

macrumors 6502a
Original poster
Jun 6, 2007
535
1
I'm not a developer so I haven't had any experience with Leopard builds. Can anyone who had the privilege of trying it out tell me how computer units are handled? Specifically, I'm talking about definition of kilo/mega/... prefixes and 10^3 vs. 2^10 mixups that make harddrives / usb sticks / optical media appear smaller than they actually are, etc.

My guess would be everything is still the same, because fixing this would probably be mentioned somewhere and because we have been using units incorrectly for a while now (frankly most other operating systems haven't fixed this either, so I'm not expecting much), but still it's better to ask :).
 
If it had changed, you would have heard about it by now, so although I haven't used Leopard yet, it's powers of 2 as always.

I seriously doubt this will change any time soon--is there ANY OS currently in use that uses base-10?
 
Not that I would know. I noticed single applications do this occasionally, but even these rare cases often don't quite get the principle and, instead of fixing the numbers, change the units (KB -> KiB, MB -> MiB, etc.), which isn't always the right thing to do.

The only people really sticking to the standardised use are harddrive makers (for obvious reasons really :D).
 
Okay, here is the problem...

Leopard just as all computers keep track of their units following standards.
That is a 1024 Byte Kilobyte, 1024 Kilobyte Megabyte and so on.

The drive manufacturers use creative marketing math to make it seem like you are getting more.

They do this by saying that 1000 bytes equals 1 kilobyte.

The problem is that this is in no way accurate according to those nasty standards organizations who came up with the measurements.

Blame your USB Thumbdrive and Harddrive Manufacturers.
 
Well, you see, that's not the case really. There's a thing called International System of units, these guys make sure that when you buy a liter of milk or a kilogram of flour anywhere in the world, it will be exactly the same amount. They also define unit prefixes among other things and many years ago they decided that a kilo-something means 1000 somethings. Until computers came along. Because of how they work, many things had to be defined to the power of 2 instead of 10. That's how kilobytes and similar stuff was born. 1000 vs 1024 seemed close enough, but look where it got us! In 1999 binary prefixes were defined to clear up this mixup, but nobody really started using them.

The harddrive manufacturers aren't using creative marketing math, they are simply following standards (which indeed does benifit them, but in this case they are correct). Actually software developers are the bad guys that make our files appear smaller.

Computer memory is really the only thing that requires binary units because of how it works (capacities in which it ships prove this), while hard drives can have random capacities (120GB, 320GB, 400GB, 500GB, ...).
 
Correct, Hard drives can be any size they feel like, however FILESYSTEMS, those things that let you use those hard drives do have those pesky binary limitations. That is based off of 8 bits per byte. 1024 bytes per kilobyte, 1024 kilobytes per megabyte, and so on.

Filesystems and all other kinds of DataIO systems are 100% dependent on the International Standards Organization's definition of a Bit, Byte, Kilobyte, Megabyte, Gigabyte, Terabyte and so on.
 
Correct, Hard drives can be any size they feel like, however FILESYSTEMS, those things that let you use those hard drives do have those pesky binary limitations. That is based off of 8 bits per byte. 1024 bytes per kilobyte, 1024 kilobytes per megabyte, and so on.

This is only true because it is currently implemented this way. A byte being 8 bits has nothing to do with a kilobyte having 1024 bytes. If the operating system decides to refer to 1000 bytes as a kilobyte, nothing is stopping it.
 
Nothing except one of those "standards" things.
Add to that one of those "Interoperability" things, you know, so that you can actually read things that were created on other computers.

Or, god forbid one of those "backwards compatibility" things, that actually lets you access your OLD data?

Sorry, but your own personal preference is not going to win out here.

I understand that "it just doesn't make sense for you", however it is the way that the technology itself that everything sits on top of is designed.

If you want to invent your very own Base-10 processors and then your very own Base-10 memory, interface controllers, circuits and pretty much everything else... be my guest.

Adding an additional interpretation wrapper onto a calculation lowers overall efficiency of the function.

So, a simple counter like, "What is the size of a file" that would normally take one cycle to complete all of the sudden takes 3, possibly 4 depending on how efficiently you can write it.

The reason being that it needs to perform the calculation, then read the answer back into a buffer, run your conversion on it, and then write it back into your buffer.

It sucks, I know. I think that you would have better luck trying to convince the rest of the world to come up with a completely new name for computer measurements so that it does not conflict with your limited ability to comprehend variable base mathematics.

Just pick up a programming book there is any doubt in your mind that I am not 100% accurate.
 
As discussed ad nauseum above...

Every hard drive manufacturer consistently uses powers of ten.

Every operating system I have ever encountered consistently uses powers of two.

I'm not saying this will ever change. But if Leopard were to go and start using powers of ten, it would just frack everything up. No good would come of it. Right now, everyone understands what everyone else means except for newbies.
 
How is this my personal preference? As I already wrote, units and their prefixes are strictly defined in the International System of units. Just because incorrect use is widespread, it doesn't make it any better.

And I don't think this is just my problem, it has been discussed many many times before, actually I was encouraged to write this post because a lecturer (I study computer science) yesterday pointed out that almost no OS handles this correctly - the man's a full professor and he wrote a couple of books on computer arcitecture, you think he has a limited comprehension of variable base mathematics too?

After all - how do you explain the missing drive space to a disappointed costumer? You blame the hard-drive makers for following standards?
 
Okay, let's back up for one moment...

All computer measurements are based off of the measurements provided by the International Standards Organization.

It is one of those English Language Screw-ups that says that Kilobyte means 1000 instead of 1024.

It sucks, but suck it up. You just have to memorize it.

Your professor does not know what he is talking about, because he does not realize that in math, variable bases causes changes to what an equation means.

OSes handle this PERFECTLY CORRECT because they FOLLOW STANDARDS.
Your professor does not handle this PERFECTLY CORRECT because he does NOT FOLLOW STANDARDS.

Hard drive manufacturers choose to use the math that makes them look most favorable, just as all other corporations use. This is no different than accounting fraud.

They are choosing to ignore the standards that apply to their field and are instead doing whatever they feel like.
 
Wait... if they follow standards, then why do we have the Binary prefixes (mebi, kibi...)? And which part of the SI Prefix standard states where are those prefixes valid? Because I'm very sure, the standard hold for all branches of science.
 
I already linked to some wikipedia articles in one of my posts above, and I'll do it again:
International System Of Units
Quote:
A prefix may be added to units to produce a multiple of the original unit. All multiples are integer powers of ten. For example, kilo- denotes a multiple of a thousand and milli- denotes a multiple of a thousandth hence there are one thousand millimetres to the metre and one thousand metres to the kilometre.

And then there's the article about Binary prefixes.
Quote:
The names and values of the SI prefixes were defined in the 1960 SI standard, with powers-of-1000 values. Standard dictionaries do recognize the binary meanings for these prefixes. Oxford online dictionary define, for example, megabyte as: "Computing a unit of information equal to one million or (strictly) 1,048,576 bytes."

BIPM (the International Bureau of Weights and Measures which maintains SI) expressly prohibits the binary prefix usage, and recommends the use of the IEC prefixes as an alternative since computing units are not included in SI.

Perhaps you'd like to link to some sources supporting your statements?
 
Regardless of what the standards body in its ivory tower may say, for us in the real world, "kilobyte" means kibibyte. Fullstop.

In designing its software had a choice, in that it could

A) Be technically correct, or
B) Do what virtually all of its customers expect

It chose B.

Looks like Snow Leopard will cause all sorts of confusion.
 
Regardless of what the standards body in its ivory tower may say, for us in the real world, "kilobyte" means kibibyte. Fullstop.
Hard drive makers seem to be an important part of this cruel real world, yet they're following standards (quite selfishly, but still).

In designing its software had a choice, in that it could

A) Be technically correct, or
B) Do what virtually all of its customers expect

It chose B.

Looks like Snow Leopard will cause all sorts of confusion.
Well, if everyone thought like that, Firefox would render pages exactly like IE. Luckily, they decided to support standards instead and turned the browser battlefield from a MS monopoly into a fair fight where even the new Microsoft product follows standards.

I agree that it's silly to force a standard nobody uses and more importantly, nobody wants to use. But if the currently popular version has apparent problems, we should work towards using standards that clear things up. Kudos to Apple on this one.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.