apple could market a "149GB" or a "74GB" hard drive, but as the hard drive manufacturers tell other computer manufacturers that their product is a "160GB" or a "80GB" drive, the other companies will market accordingly - and it would be apple who would take a hit for calculating correctly.
operating system does just fine by stating that 1 KB = 2^10 B. there's nothing wrong about that. but the HD manufacturer who states 1 KB = 1000 B is just wrong. a thousand bytes is a thousand bytes, not a kilobyte.
it is the hard drive manufacturers who should tweak their hard drive sizes and their marketing. it is not any harder to create a "150GB" drive than a "149GB" one. or "75GB instead of a "74GB" one. or even a true 160GB / 80GB drive, measured in true gigabytes. why won't they?
oh well... it's the smallest of all problems in the field 😉