Метрический префикс Mega- имеет несколько разных последствий в разных областях ИТ, а с дисками это особенно запутывает. Традиционно метрические префиксы имеют степень 10, но в начале истории ИТ такие префиксы, как килограмм, мега и гига, использовались для представления приблизительных значений в степенях 2 при преобразовании в десятичную.
Производители дисков берут префикс буквально и измеряют КБ как 1000 (10 ^ 3) байтов, тогда как при фактическом использовании размер килобайта должен быть степенью 2 (поскольку он состоит из битов) и обычно принимается равным 1024 байта (2 ^ 10). МБ на диск производителей составляет 1000000 байт, тогда как для всех остальных это 1048576 (2 ^ 20), включая вашу ОС, поэтому, когда вы сохраняете файл размером 1 КБ, он занимает 1024 байта на диске. Однако одним исключением из-за его сильной связи с дисками является fdisk
.
В прежние времена числа были настолько малы, что мы могли игнорировать дополнительные 24 байта на КБ, но по мере расширения емкости, чем больше метрических префиксов и двоичных префиксов расходилось, и разница стала незначительной. В масштабе Терабайт мы теряем около 70 ГБ в конвертации. По этой причине многие люди теперь используют бинарные префиксы явно, чтобы избежать путаницы. VMWare выбрал именно это.
Kilo => 10^3
Mega => 10^6
Giga => 10^9
Tera => 10^12
Kibi => 2^10 (1,024)
Mebi => 2^20 (1,048,576)
Gibi => 2^30 (1,073,741,824)
Tibi => 2^40 (1,099,511,627,776)
Таким образом, в этом случае у вас есть VMWare, использующая MiB, и FDisk, использующий MB, поэтому на рисунках будет несоответствие.
С точки зрения VMWare, вы просили 500 МБ, и он дал вам, но с точки зрения Fdisks это объем 524 МБ. Однако эти два значения абсолютно одинаковы.
Итак, для объема 500 МБ расчет размера:
500 * 1048576B = 524288000B => 500 MiB which equals 524MB
однако для диска объемом 500 МБ расчет будет следующим:
500 * 1000000B = 500000000B => 500MB which equals 476MiB
поэтому вы не сможете хранить в нем 500 МБ фактических данных.