1 kilobyte is precisely 1000 bytes?
Historical ambiguity and competing conventions
- Commenters argue over whether “kilobyte” historically meant 1024 bytes, 1000 bytes, or has always been ambiguous.
- Examples cited: 1970s–80s RAM and CPUs (PDP‑11, Z80, 1K=1024 explicitly documented), versus IBM disks and mainframes marketed with decimal “MB” long before PCs.
- Some point out floppy and early hard disk capacities mix both systems (e.g., “1.44 MB” floppies = 1440×1024 bytes; CDs marketed as “650 MB” but actually 650 MiB).
- Several people later correct earlier overconfident claims, conceding that ambiguity exists at least since the 1960s–70s and split by domain (CPU/RAM vs storage/signal processing).
Marketing, storage, and overprovisioning
- Strong sentiment that disk vendors adopted 1000‑based units mainly for marketing, inflating apparent capacities.
- For SSDs, discussion that “binary” raw flash sizes and “decimal” advertised sizes incidentally provide ~7–10% overprovisioning, but this does not align cleanly across capacities and is not seen as deeply engineered to match the 1000 vs 1024 gap.
- Some emphasize that disks were base‑10 from the very first IBM drives, so talk of a deliberate “switch” is overstated.
Binary prefixes (KiB, MiB) and adoption
- IEC prefixes (kibi, mebi, gibi) are widely known but rarely spoken; many find “kibibyte” & co. silly‑sounding and refuse to use them.
- Others report that in precise or large‑scale work (e.g., PiB‑scale storage, technical documentation) KiB/MiB/GiB are used and useful.
- Knuth’s criticism of the IEC naming is frequently cited as why these terms are “DOA,” even by people who agree with decimal SI in principle.
Language, standards, and the meaning of “kilo”
- One camp is strongly prescriptivist: SI defines kilo=1000, so “kilobyte” is 1000 bytes; 1024 should always be KiB.
- Another camp is descriptivist: in computing practice “KB” can mean 1000 or 1024 depending on context; pretending otherwise is unrealistic.
- Several stress that standards exist precisely to avoid such context‑dependent units, comparing this mess to pre‑metric feet/pounds/gallons.
Real‑world confusion and software behavior
- OSes and tools differ: Windows still shows 1024‑based “KB/MB/GB”; many Unix tools and GUIs now use decimal for KB, binary for KiB, or hide the “i” (e.g., “10K” meaning 1024‑based).
- This leads to user confusion when comparing RAM vs disk, file sizes vs network speeds (bits vs bytes, binary vs decimal).
Suggested resolutions and attitudes
- Proposed fixes range from: “keep KB=1024 and invent new decimal words”, to “strictly reserve SI for decimal and always use KiB for binary”, to more creative new naming schemes.
- Many conclude the situation is permanently mixed: context will continue to matter, and explicit KiB/MiB are the only fully unambiguous choice when precision is critical.