Hacker News new | past | comments | ask | show | jobs | submit login

I agree with both of you. Frankly we need to all pick a day and on that day everybody change their settings so their OS reports sizes in base 10. Not gonna happen but that's what we need.



And now my 16GB machine suddenly has 17,2GB of memory, divided by the OS not into 4KB pages,but almost-but-not-quite 4,1KB pages.

For some parts powers of 2 will still work best, and the dividing line will probably always be arbitrary.


There is no golden rule about memory having to be a power of 2 at all costs. Manufacturers can make base 10 round memory.

Pages will be 4KiB. For the few engineers who care.


Actually, there is. Because the underlying numbering system in the hardware of a computer (i.e., the bus wires) is binary, powers of 2 are just the natural results.

I.e., a binary address bus of 16 bits in width can address 2^16 different memory cells, which is 65,536 individual locations. To make this a 'decimal sized' memory would require either ignoring 5,536 possible addressable locations, or using bus lines that are not binary. Ignoring addressable locations does not maximize the usage of the available numbering system, and building ten value electrical bus wiring in hardware is a significantly much more difficult engineering effort than building two value electrical wiring (because two value electrical wiring is simply "on" or "off").

This is why so many of the "computer units" that were close in size to the standard SI units were measured in powers of 2 sized values instead of powers of 10. Computer hardware is using binary numbers everywhere, and powers of 2 are simply the natural outgrowth of that usage.

It was humans that decided that 2^10 (1024) was 'close enough' to the SI k to call it a "kilobyte" and that 2^20 (1,048,576) was 'close enough' to the SI m to call it a 'megabyte' and so forth.


Great point, I take back what I said about RAM. Thanks for that.

However, I stand by my disapproval of bleeding that into the consumer space, especially for files and hard drives. As you said, power of 2 is a hardware detail. Not something that end users (should have to) care about.


How pervasive is said base-10 round memory on the market? And why would a golden rule be necessary?

Base-2 is the natural order of digital computer organization. Deviations introduce unnecessary complexity. Unnecessary complexity is a form of inefficiency. And markets tend to not tolerate inefficiencies for long...except when marketing can bullshit its way in getting ignorant consumers to pay out more for less.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: