News for hackers. Stuff that matters.
Re:Modern HDDs have gotten somewhat better by colanderman on Wednesday June 22, 2022 @05:40PM (#31842204)
> The situation would be different if HDDs and SSDs always or typically had exact sizes

I just checked two of three SSDs available to me. Two were exact multiples of power-of-two gigabytes -- 200 GiB, 120 GiB. One was 500.3 GB.

SI units might be more useful to a consumer (and I am not arguing they aren't). But the argument that storage systems have "nothing to do" with powers of two is not valid.

Re:Modern HDDs have gotten somewhat better by qilo on Wednesday June 22, 2022 @06:30PM (#31842686)
HDD sizes are set by manufacturers according to the IDEMA "LBA Count for Disk Drives Standard"[0] formula:

  LBA_count = 97696368 + 1953504 * (Reported_Capacity_in_GBytes - 50)
So, for 120 GB HDD:

  (97696368 + 1953504 * 70) * 512 / 1024^3 = 111.79 GiB
  (97696368 + 1953504 * 70) * 512 / 1000^3 = 120.03 GB
For 200 GB HDD:

  (97696368 + 1953504 * 150) * 512 / 1024^3 = 186.31 GiB
  (97696368 + 1953504 * 150) * 512 / 1000^3 = 200.05 GB
For 500 GB HDD:

  (97696368 + 1953504 * 450) * 512 / 1024^3 = 465.76 GiB
  (97696368 + 1953504 * 450) * 512 / 1000^3 = 500.11 GB
Doesn't look like powers of 2 at all. Are you sure about your sizes?

[0] http://www.idema.org/wp-content/downloads/2169.pdf

Re:Modern HDDs have gotten somewhat better by ThePowerOfFuet on Thursday June 23, 2022 @07:21AM (#31847531)
Logical Block Addresses were simple back when all blocks were 512 bytes. Now we have 520 (T10-PI), 4096, etc, so your math falls apart.
Re:Modern HDDs have gotten somewhat better by qilo on Thursday June 23, 2022 @08:08AM (#31847900)
For disks with sectors of 4096 bytes, the formula is the same except the constants are accordingly 8 times smaller.

Regarding sectors of 520 bytes, usable bytes are still 512. Quote from the above referenced document:

> HDDs formatted with T10 PI (Protection Information) have 8 bytes added to the end of each sector. However, the user usable sector size will remain at 512 bytes or 4096 bytes. The 8 bytes of PI will increase the overhead of the disk sector density similar to overhead of ECC bytes in a given sector.