Почему реальный размер памяти меньше заявленной? Разбор | Портал про авто и технологии

Почему реальный размер памяти меньше заявленной? Разбор

Почему на диске памяти меньше, чем  написано на упаковке? Вы наверняка хоть раз задавались таким вопросом.

Вот покупаешь смартфон, где на коробке написано: встроенная память 128 ГБ. Включаешь, заходишь в настройки. А там свободной памяти только 115 ГБ. Как так?

Наверняка, вы также отвечали сами себе что-то вроде: ну да, но там же какое-то место занимает прошивка, все дела. Безусловно…

Но как насчет флешки или жесткого диска, где вместо 1 терабайта всего 930 гигов? У флешки тоже прошивка/система на десяток гигабайт? Это вряд ли.

Поэтому сегодня объясним, почему так происходит, как это устроено. И главное, вы азнаете, что такое МЕБИБИТЫ чем отличаются от мегабайтов?? И почему файлы воруют место?

Оказывается, у этой проблемы есть три причины.

1. Разные системы исчисления

Почему реальный размер памяти меньше заявленной? Разбор

Первая — математическая. Дело в системах исчисления. В бытовой жизни мы обычно используем десятичную систему исчисления, в которой 10 цифр: от 0 до 9. Скорее всего для нас она самая интуитивная из-за 10 пальцев на руках. Логично. Получается, если бы вдруг эволюция решила оставить нам по 6 пальцев, то двенадцатиричная система была бы для нас такой же естественной. Наверное…

В компьютерной технике используется двоичная система исчисления с двумя цифрами: 0 и 1. Это удобно, потому что в компьютерах используются логические операции, принимающие два значения: истина и ложь.

Как вы думаете, какая из двух систем используется для обозначения объемов памяти в устройствах? Оказывается, обе. И в этом вся проблема.

Оказывается, мы смотрим на флешку и имеем дело сразу с двумя гигабайтами: десятичным и двоичным. Сейчас объясню.

Почему реальный размер памяти меньше заявленной? Разбор

В международной системе единиц СИ есть общеприянтые префиксы: например кило или мега. 1 Мегаватт — это ровно миллион ватт. 1 килограмм — ровно тысяча граммов.

И отсюда получается, что 1 килобайт — это ровно тысяча байт. Ну или 10 в третьей степени байт. Вроде логично. Но в чем подвох?

Подвох в том, что в реальности электроника и память состоит из двоичных элементов. Потому что она заточена под двоичные вычисления и ей так удобнее. Помните? Собственно минимальная единица информации 1 бит — это по сути одна цифра в двоичном коде, то есть значение 0 или 1. Дальше 8 бит образуют 1 байт. Потому что 8 — это степень двойки, 2 в третьей степени.

А чтобы хранить больше информации, нам надо подобрать степень двойки, которая похожа на 1000. И есть такая — это 2 в десятой степени или 1024 байта. Вы часто сталкивались с этой цифрой, например в разрешении экранов, потому что компьютерам с ними удобно.

И реальные ячейки памяти состоят именно из такого количества байт — 1024.

А дальше возникает проблема. Дело в том, что согласно международным стандартам на упаковке принято указывать размер в десятичных единицах. Но казалось бы подумаешь: вместо 1024 байт мы получаем 1000. Не так страшно — это всего 2.5 процента. Но есть проблемка. Это мы говорили всего про килобайт. А с ростом масштаба накапливается и проблема.

Потому что 1024 * 1024 это уже миллион 48 тысяч с фигом, то есть почти 5 процентов разницы. Это только для мегабайта. Но кто же покупает флешку на мегабайт?

Умножаем еще раз.

1024 * 1024 * 1024 = 1 0 73 — миллиард 73 миллиона с фигом. То есть 7 процентов потерь для гигабайта.

И еще раз: 1024 * 1024 * 1024 * 1024 = 1 099 триллион и 99 миллиардов. Почти 10 процентоов потерь будет на вашем жестком диске в терабайт.

И путаница возникает. А операционные системы любят использовать двоичную систему.

Главным образом, это касается Windows, которая до сих пор в «Проводнике» пишет размер файлов в двоичных мегабайтах.

Apple перешла на десятичные только с iOS 10 и в операционной системе Mac OS X Leopard.

Android по дефолту тоже использует десятичные обозначения, но все зависит от софта. Например, Total Commander покажет размер файла в привычных двоичных.

Один и тот же файл на Windows весит 1.97 ГБ, а на iPhone — 2.06 ГБ. При этом размер в байтах будет равный. Парадокс.

Какое есть решение?

Почему реальный размер памяти меньше заявленной? Разбор

Оказывается, решение существует. И это введение нормальных терминов.

В 1998 году Международная электротехническая комиссия осознала проблему и постановила все классические названия кило и гигабайты использовать для десятичных объемов. А для двоичных придумали новые префиксы: Киби, Мебибайты, Гибибайты и так далее…

То есть второй слог префикса заменили на «би» — что отсылает к бинарный, то есть двоичный. И правильное обозначение такое: GiB, с буковой «ай»: KiB, MiB, GiB, TiB.

Да-да, если вы смотрите размер файла на iPhone или MacBook, то он написан в МебиБайтах. Живите с этим!

Что в итоге?

1 гигабайт меньше 1 гибибайта. Примерно на 7 процентов.

1 GB = 1 000 000 000 B

1GiB = 1 073 741 824 B

А на упаковке всегда пишут именно МЕГАбайты. С проблемой номер один разобрались.

2. Файлы воруют место…

Почему реальный размер памяти меньше заявленной? Разбор

Следующая проблема немного косвенная. Оказывается, файлы тоже воруют место на дисках. Но связана она с тем, сколько места занимают отдельные файлы.

Вы наверняка замечали, что если например в Windows открыть свойства файла: будет написано размер такой-то. А снизу еще одна строчка: на диске занимает столько-то. Почему так?

Это тоже имеет отношение к тому, как файлы хранятся в памяти. Дело в том, что они записываются на диск не подряд как треки на виниловой пластинке.

При форматировании файловая система разрезает диск на кластеры. Типа странички. И начать записывать новый файл вы можете только перевернув такую страничку. У каждой системы кластеры разные. Например, для NTFS это может быть 4 килобайта. И если файл сильно меньше, то мы потеряем почти всю страничку. При этом большие файлы можно записывать подряд. Потери при их хранении будут минимальны.

3. Место под систему

Почему реальный размер памяти меньше заявленной? Разбор

Ну и третья причина, о который вы догадались сразу. Это место под системную информацию. Это не всегда только операционка. Например, флешки и жесткие диски тоже забирают часть хранилища при форматировании для разметки, но это обычно совсем немного.

В случае со смартфоном или компьютером, речь идет о больших объемах. Например, iPhone 12 из коробки работал на iOS 14, которая занимала около 5 гигабайт. Вернее Гибибайт. Но по факту вы получите еще меньше полезной памяти, потому что 5 гибибайт это только система. А во время работы операционка быстро обрастет системными файлами и кешами. И все это вместе будет занимать около 10 Гибибайт. Такие дела.

Итоги

Почему реальный размер памяти меньше заявленной? Разбор

Надо понимать сколько занимают ваши файлы — и интересно, что разные операционки имеют разное мнение по этому поводу. А главное, никто до сих пор не хочет полноценно переходить на новую терминологию, потому что наверное она дурацкая.

Post Views: 397