CraigD Posted November 13, 2009 Report Posted November 13, 2009 It’s been over a decade since the first widely-publicized efforts by various standards organizations to rid the world of the ambiguous use of prefixes beginning with K, M, G, T, etc. to mean 1024, 1048576, 1073741824, 1099511627776, etc. or 1000, 1000000, 1000000000, 1000000000000, etc. (The wikipedia article ”binary prefix” gives a summary of the history of what we call various two-to-the-power units.) As best I can surmise, even among professional bitsmiths (programmers, hardware folk, etc), hardly anyone’s ever even heard of this, or the odd-sounding alternative unit prefixes that came from it. Saying something like “that file system has six-hundred sixty-five gibibytes” is more likely to garner confused look than appreciation for your precise language. So, to the question – what do you call them? Kilo/mega/giga/tera/peta/exabytes, etc., kibi/mebi/gibi/tebi/pebi/exbibytes, or something else altogether? Chacmool 1 Quote
Buffy Posted November 13, 2009 Report Posted November 13, 2009 What's so hard about a special case? Kilo = 1024 if it's bytes and 1000 if its anything else. If neophytes think a kilobyte is 1000 bytes, then they just end up with a tiny (2%) margin for error...which we know the OS is gonna steal with overhead anyway! Much good work is lost for the lack of a little more, :shrug:Buffy P.S. What? Ya didn't like my poll Craig? :phones: Quote
freeztar Posted November 13, 2009 Report Posted November 13, 2009 Kilobyte MB and GB are a convenience for the consumer. (bit-linguals be damned :phones:) Quote
Boerseun Posted November 13, 2009 Report Posted November 13, 2009 Funny, really. A Kilo is the prefix for a thousand. A thousand is a thousand, be it in binary or in decimal, but it's just a handy marker for a clear number in decimal. 1000 - as arbitrary as it gets. 1000 in binary is actually just 8 in decimal. An actual thousand, though, is 1111101000, which doesn't actually mean anything. 10000000000 will be a quick marker in binary, deserving of a dedicated prefix like "Giga" or "Mega" or whatever, but is, in actual fact, only 1024 in decimal - not really worthy of anything. In decimal, there are quick markers for every additional zero that gets added, like kilo, mega, giga, etc., but only because the numbers are sufficiently large to justify it. In binary, a kilo would simply be decimal 8, and a giga would be 512 decimal - if you go by the number of zeros. Binary needs lots of zeros before the numbers become big enough to require prefixes. I think the entire scheme is a bit iffy, because they're trying to impose a decimal verbal shortcut into binary, which doesn't work. If you want to use the decimal prefixes for the binary that comes closest to it, then a kilobyte will be 1024, and so on - and is handy (if a little confusing) for consumers. But that's about as good as it's gonna get. If you want to be neat and tidy about the whole affair, and assign verbal shortcuts to binary numbers that are nice and rounded like 1000000, then you're merely going to give verbal markers to the powers of 2. 1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072 etc. (in decimal) will be your marking points - but it won't mean much in decimal except as the markers where binary numbers are all zeros (apart from the leftmost digit) - which is basically the same approach we take in the decimal naming scheme of kilos and gigas. So the point I'm trying to make is that a kilo is a kilo and a giga is a giga, but it should be clear that it is expressly intended for decimal and doesn't apply to binary or hexadecimal or any other base. The marker point of the rollover from six digits to seven digits is base-dependent, after all. If you call it a gibibyte, the "bi" should be clear. What to do with hexadecimal, though? Will that become a "gixabyte"? Nobody actually counts in binary or hex, the only guys worrying about it are computer geeks - and they normally let the computers do the crunching for them. The prefixes are expressly intended for decimal, and I think we should leave it at that... Quote
C1ay Posted November 13, 2009 Report Posted November 13, 2009 Nobody actually counts in binary or hex, the only guys worrying about it are computer geeks - and they normally let the computers do the crunching for them. The prefixes are expressly intended for decimal, and I think we should leave it at that... I would be one of those people that worry about it and one of these reasons I do is storage. If I buy a 500GB hard drive I expect it to hold 536,870,912,000 bytes instead of 500,000,000,000. You can see how much the difference adds up with today's storage devices. Quote
CraigD Posted November 13, 2009 Author Report Posted November 13, 2009 What's so hard about a special case? Kilo = 1024 if it's bytes and 1000 if its anything else.There’s nothing hard about it – the “kilo can refer to 1000 or 1024” convention is, experience and this poll so far bear out, the most common convention, and were, according to the wikipedia summary, noted by ANSI and the IEEE in 1986 - it’s just a matter of conventional consistency. As a common inconsistency, it’s a pain in parts-that-pain-you that can rise up to bite your parts-most-bitten at the most inopportune moments. I’ve come to assume that when I’m talking to someone giving me storage (professionally, I never get to actually touch hardware or even build my own file systems) on a unix system, a Gbyte is most likely [imath]2^{20}\cdot10^3 = 1,048,576,000[/imath], rather than [imath]10^9 = 1,000,000,000[/imath] or [imath]2^{30} = 1,073,741,824[/imath], as they’re usually looking at the output of something like df -m, which gives a decimal count of mebibytes, and just knocking off least significant digits three at a time. This is usually OK, as I usually need only a ball-park idea of the size of a file system. When available storage starts to get down to the last few percent (as recently happened to me), however, it can get scary, especially if I can’t get at the system to actually see anything, but must rely some number emailed or spoken over a phone. Back around Y2K, I made a effort to push “kibis, mebis, and gibis” into the everyday vernacular by using them myself as if they were something everybody used. Obviously, I and folk with similar intentions weren’t successful at this. Precision of language is a hard meme to push, even if you’ve catchy/cute sounding words to push. :(P.S. What? Ya didn't like my poll Craig? :rolleyes:It’s a good one, Buffy, if a bit embarrassing as my vehicle’s an awful gas-pig (which, fortunately, I don’t use more than a couple of times a week, having good mass-trans where I live and work). It’d be nice, perhaps, if we re-layed-out hypography to show more than one recent poll at a time. PS:My personal attempt of late to avoid the [imath]10^3[/imath] vs. [imath]2^{10}[/imath] ambiguity is to not use a word prefix like “kilo-” or “kibi-”, is to use the words “kay”, “meg”, “gig”, “tee”, etc. Interestingly, the common word in this convention for [imath]2^{10}[/imath] and [imath]2^{40}[/imath] seem to be the word to the letter “K” and “T”, while [imath]2^{20}[/imath] and [imath]2^{30}[/imath] are shortenings of the most common word prefixes. sanctus 1 Quote
DFINITLYDISTRUBD Posted November 14, 2009 Report Posted November 14, 2009 I dunno it depends on the application and/or who you're talking too:shrug:....are we talking functional or storage....literal or generally accepted here? Quote
sanctus Posted November 15, 2009 Report Posted November 15, 2009 I agree that it makes a difference with nowadays storage devices, but I tend to think like Buffy, you just have to know what you are talking about...and call everything kilo-etc. But I voted option 3, just because I like it a lot, reminds of:2+2=5 (for extremely large values of 2) Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.