Kilobytes and kibibytes

From Helpful
Revision as of 18:56, 23 January 2020 by Helpful (talk | contribs) (→‎Recently)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Summary

Historically

  • Kilo-anything-but-byte: 1000
  • Kilobyte: 1024


Also:

  • Kilobyte according to marketing departments of storage: 1000
because they can twist your expectations a few percent without technically lying. (The difference is ~7% in GB figures, ~10% in TB figures.)
  • kilos in networking are typically 1000-based (also typically in bits, usually megabits or gigabits)
mostly because the underlying hardware (e.g. clock crystals) is specced that way.


In programming, and multiples-of-something logic in computers, powers of two are frequently more convenient. Since 1024 (210) is close enough to 1000 (103), it got used as a kilo.



Recently

A few institutions got involved:

  • IEC (60027?) (1998?)
  • BIPM, the International Bureau of Weights and Measures (1998)
  • IEEE (1541 / [1]) (2003)


The idea is decreeing that:

  • kilo-everything is 1000 (adhering to SI always), and
  • a kibibyte (KiB) is meant to refer to 1024, with mebibyte, gibibyte, tebibyte, pebibyte, exbibyte etc. analogous.

...to clear up possible confusion, in the long run at least

Questions and criticism

On the long term, the kilo/kibi distinction is better, because it means that kilo means 1000 everywhere -- where previously it was "1000, except 1024 in computers, except when not".


However, until that's universally true, it's actually a bit worse for the computer case.

If you see iB, you know it's 1024-based
this case is always clear
If you see B, it used to usually be 1024, but it is now more correct to be 1000-based
this isn't exactly clearer to programmers or users.


...and most major interfaces don't make it any better. Circa 2010 to 2018 ...

Windows shows 1024-based without the i, which is incorrect
OSX shows 1024-based without the i, which is incorrect
KDE shows 1024-based with the i, which is correct and clear
Gnome shows 1000-based without the i, which is correct but you need to know this


Some argue against it noting that it will probably won't help clarify anything within their lifetime, which probably helps adoption being slow.

Also saying Kibibyte, Mebibyte, Gibibyte, Tebibyte, Pebibyte, Exbibyte etc. sounds a little silly :)



b/B

The capitalisation of b/B to signify bits and bytes is seen in some contexts, though relies on consistency more than standards.

In particular in network speeds e.g. Mb/s is likely to be megabits per second.


Mo

Megaoctets.


Octets are technically more correct than byte.

While octets have been basically synonymous to bytes for decades, they weren't always. There were some computers (old, most you've probably never heard of) where bytes weren't 8-bit things.



So some people prefer Ko, Mo, Go over KB, MB, GB.

Apparently mainly the French, which seems to be mostly historical and a bit of language pride (more than the 'sounds like penis' reasons. (Mega)bit sounds rude, but byte doesn't really sound like anything french).

See also