The persistent storage measurement problem
Your new 1TB SSD arrives. Windows shows 931GB available. You're not missing storage - you're caught between two competing standards that the industry never fully reconciled.
The International Electrotechnical Commission standardized this in 1998: kilobyte (KB) equals 1,000 bytes under SI units, while kibibyte (KiB) equals 1,024 bytes for binary calculations. Storage manufacturers adopted the decimal standard. Microsoft didn't.
Why it matters at scale
The 2.4% difference between 1,000 and 1,024 compounds significantly:
- 1 kilobyte: 2.4% variance
- 1 megabyte: 4.8% variance
- 1 gigabyte: 7.3% variance
- 1 terabyte: 10% variance (100GB difference)
- 1 quettabyte: 26.8% variance
RAM manufacturers still follow JEDEC standards using powers of two (16GB means 17.18 billion bytes). Storage vendors measure in powers of ten (1TB equals exactly one trillion bytes). Operating systems split the difference based on legacy conventions.
The implementation gap
Linux distributions increasingly display file sizes in KiB/MiB/GiB, using the 1998 binary prefix standard. Windows continues showing KB/MB/GB while calculating with 1,024-byte units. macOS switched to decimal in Snow Leopard (2009), then partially reverted.
For developers, the distinction matters in bandwidth calculations and storage allocation. A network interface advertising 100 Mbps uses decimal megabits (100 million bits per second). Your code allocating buffers likely uses binary mebibytes (1,048,576 bytes).
The standard exists. History suggests full industry adoption won't happen - the installed base of software using 1,024-byte "kilobytes" is too large. What changes is transparency: storage vendors now specify "1TB = 1,000,000,000,000 bytes" in fine print.
The confusion isn't technical ambiguity. It's competing conventions from different eras that enterprise architects need to account for in capacity planning. A terabyte means different things depending on who's measuring.