8 ms·
Correctly. 1MB is one million bytes, and files do not intrinsically come in power-of-two sizes. It may still make sense to use MiB for RAM though.
by jl6 6y ago
Correctly.
1MB is one million bytes, and files do not intrinsically come in power-of-two sizes.
It may still make sense to use MiB for RAM though.
- varjag 6y agoIt may make sense for SI to stick to physical units business.
- kube-system 6y agoMaybe they tried to, but nobody could agree on a time to do it. :D
- SAI_Peregrinus 6y agoAnd there's already a unit for "amount of substance": the mole (symbol mol). 6.02214076e23 bytes is rather more than one encounters every day, but prefixes can handle that. A zeptomol of data is 602.221476 bytes, an obviously convenient number for indivisible amounts of data.
- argvargc 6y agoFiles may not, but file-systems do. All else being equal, I see it as better to under-promise and over-deliver than the reverse: In a world where there was one commonly-accepted meaning for MB (ie, the world where computers were invented, proliferated and became ubiquitous), and one assumed meaning (however logical it may be), users without the requisite nugget of binary knowledge would be positioned to be pleasantly surprised that they had "more than they paid for". In the case of file-sizes, this is to that users detriment, but in the case of the potentially more litigious issue of amount of drive space or RAM being purchased, this is to the users advantage. For those that simply knew, on the other hand, things were just as expected. Conversely, in the world where we now have two justifiable hard meanings for MB (one historical, one "canonical"), and people who go about endlessly correcting each other about them, we have handed the "things are as expected" situation to the everyday users, while the rest have inherited a mix of "less than I paid for" and "confusion". All-up, not a worthwhile trade IMO.
- soneil 6y agoThere was never one commonly accepted meaning for a MB. Storage has always been base10. Linespeed has always been base10. RAM is native to a matrix, and lazy programmers like to pretend that means everything is. The first commercial drive, the IBM 305, stored 100,000 characters on each of 50 platters, for 5 million total characters. Drives have been a base10 number of sectors for my entire lifetime.
- argvargc 6y ago> There was never one commonly accepted meaning for a MB. If that was correct, this HN post wouldn't exist. For the 50 years preceding Apple's intervention, any example that can be produced of MB equalling 1,000,000 bytes, likely has about one MiB-worth of counter-examples showing it equalling 1,048,576 bytes.
- pseudalopex 6y agoNo.[1] [1] https://en.wikipedia.org/wiki/Byte#Units_based_on_powers_of_10 https://en.wikipedia.org/wiki/Byte#Units_based_on_powers_of_...
- argvargc 6y agoThis wikipedia article quoting a standard formalised in the late 90's, and only beginning to gain adoption from that point on, largely supports my statement.
- pseudalopex 6y agoThe Wikipedia article lists things that always used the base 10 definition. It has examples of disks from the 1970s. And it mentions a 3rd definition of megabyte used since the 1980s.
- coldtea 6y ago>For the 50 years preceding Apple's intervention, any example that can be produced of MB equalling 1,000,000 bytes, likely has about one MiB-worth of counter-examples showing it equalling 1,048,576 bytes. You'd be surprised... M has been the accepted prefix for 1,000,000 since the 19th century, widely used in science, networking standards and disks, decades before Apple made any change itself...
- deleted 6y ago[deleted]
- bluejekyll 6y agoAdditionally, file systems allocate in blocks, so the actual amount of storage is based on number of blocks and isn’t just offsets of bytes.
- kerng 6y agoNot really, in information technology megabyte often is calculated via (convenient) binary multiples, as has been for many decades. As often in life there is not a single truth.
- Wowfunhappy 6y agoSays who? Okay, that question actually has an answer: the IEC. Unfortunately, lots of software disagrees with them, including Windows, because for some strange reason the IEC thought it was a good idea to redefine an existing measurement and then add a new term to mean what the old term used to mean. The result was 100% predictable. Files now have two different sizes depending on which software you're using, and it's very difficult to tell which definition is in use. Even worse, the difference between these measurements is quite large, and converting between them isn't simple. As much as I wish the United States used the metric system, I don't think we should redefine an inch to equal two centimeters...
- pseudalopex 6y agoMB never consistently meant MiB.
- dkjaudyeqooe 6y agoSince when? It was defined as such originally and stood for decades without much controversy until computers became more mainstream and self-interested parties started changing the meaning.
- lokar 6y agoDisk and networking hardware manufacturers have used base 10 for ages.
- pseudalopex 6y agoIncluding Ethernet in the 1980s. And disks in the 1970s.
- coldtea 6y ago>It was defined as such originally and stood for decades without much controversy until computers became more mainstream M (as in MB) has meant 10^6 (1,000,000) in the S.I / metric standard since the 19th century...
- techrat 6y ago>1MB is one million bytes, and files do not intrinsically come in power-of-two sizes. Given the foundation of computing is binary, yes, files actually do come in power of two sizes. 1 and 0. Two. Base two. From then, the way our bits, then bytes are structured. 8 bits to a byte for 8 bit addressing. That's why 1KB was always 1,024 bytes. Base 2: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024. Recognize some of those numbers? Common ram sizes, also the increments in how many bits our architectures have been. These numbers remained constant because the foundation of computing was always Base 2. Using Base 10 to calculate total storage space is a cheat when sector sizes are Base 2. There's no reason to use a different system (Base 10) for storage if Ram is Base 2 unless you're trying to inflate the specs of how much storage is being sold with a system. Which is how the 1 MB = 1,000,000 Bytes bullshit originally started. Until you re-format storage and ram sector sizes to be Base 10, and along with it, the number of bits of addressing our computing system uses, (Hello brand new architecture!) then there's no way to justify the renumbering of storage to Base 10.