3

Recently, I had two storages on hand: one was a relatively old 1TB Toshiba HDD, the other was a brand-new 1TB Samsung SSD. I have known for quite some time that the capacity labels can be a bit tricky. Out of curiosity, I ran fdisk on both devices to compare their actual capacity; it returned the exact same value for both: 1000204886016 bytes.

I expected 240, or 1012, or two distinct seemingly random values somewhere in-between (I heard that the manufacturers usually keep some part of the storage in reserve). But certainly not an unique seemingly random value (and it's not even close to an integer value in MiB). And after a short research, I found that value again on this question and that question (unix site) (and Google returned a significant amount of results).

Is this some kind of convention, or just a surprising coincidence?

1 Answer 1

7

Looks like it's base on the JEDEC standard of calculating capacity. Scroll to page 8, SSD Capacity, in this pdf file.

Below is the formula according to that standard:

CapacityInGB = (UserLbaCount - 21168) / 1953504

One sector, or LBA, is equivalent to 512 bytes, so base on the 1000204886016 bytes given by your findings, we can calculate the UserLbaCount:

UserLbaCount = 1000204886016 / 512 = 1953525168

Now lets plug that into the JEDEC formula:

CapacityInGB  = (1953525168 - 21168) / 1953504
CapacityInGB  = 1953504000 / 1953504
CapacityInGB  = 1000 GB = 1TB

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .