Найти тему
XCOM-SHOP.RU

Кто нас обманывает и почему на флешке всегда меньше места, чем заявлено

Оглавление

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

Наверное, каждый, у кого была флешка, обращал внимание на несовпадение заявленного и фактического объема. Обычно недостача составляет около 10%. Если производитель заявляет 32 ГБ, то по факту накопитель будет отображать не больше 29 ГБ или даже чуть меньше. Конечно, неприятно, но истерик из-за этого чаще всего никто не закатывает. Ну, подумаешь, китайцы немного "не доложили", но ведь никто от этого не умер. Да и стоят флешки чаще всего не очень дорого, чтобы жаловаться. Вот только причина этой недостачи кроется совершенно не в жадности производителя.

Как измеряется объем флешки: гигабайты и гибибайты

Любой школьник вам скажет, что один гигабайт, в которых рассчитывается емкость современных флеш-накопителей, - это 1024 мегабайта. Но это смотря как посчитать.

В рамках двоичной системы счисления этот тезис верен, и на базовом уровне расчеты будут выглядеть так: 2 ^ 10 байт = 1024 байт. Соответственно, для вычисления объема накопителя в гигабайтах мы заменяем байты на мегабайты и получаем ту же цифру, но с поправкой на единицу измерения.

Однако производители накопителей используют десятичную систему. Она определяет 1 гигабайт как 1000 мегабайт. Но жадность тут совершенно не при чем. Немногие знают, что Международная система единиц (СИ) считает единственно верным именно такой вариант. Просто большинство компьютеров использует двоичную систему, из-за чего и возникает такое противоречие.

Чтобы его устранить, в 1998 году Международная электротехническая комиссия ввела дополнительные термины для обозначения емкости накопителей:

  • Кибибайт (КиБ) - 1024 байт
  • Мебибайт (МиБ) - 1024 кибибайт
  • Гибибайт (ГиБ) - 1024 мебибайт
  • Тебибайт (ТиБ) - 1024 гибибайт

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

Вот так гигабайты и терабайты пересчитываются в гибибайты и тебибайты
Вот так гигабайты и терабайты пересчитываются в гибибайты и тебибайты

Это не только создает путаницу, но и увеличивает "визуальные" потери. С одного килобайта "теряется" около 2%, с одного мегабайта - 5%, с гигабайта - 7%, а с терабайта - целых 9%. Поэтому Apple, например, ввела в обращение в своей системе macOS десятичную систему определения емкости накопителей. Если у вас на компьютере установлена одна из последних сборок, вы наверняка заметите это.

Почему пропадают данные с флешки и как этого не допустить

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

Производители стараются разными методами минимизировать ущерб, который наносится ячейкам, но их выход из строя неизбежен. Чтобы не лишить пользователя записанной информации, используется метод ротации. В некоторых хороших флешках алгоритмы просто заменяют поврежденные или изношенные блоки с ячейками на невредимые и используют их в дальнейшей работе. Но они не берутся из ниоткуда. Для этого необходим какой-никакой запас ячеек. Его создают еще на этапе производства: небольшая часть от общего объема блокируется и не используется ни для чтения, ни для записи.

Потребительские флешки выделяют под ротацию от 7 до 10% емкости, а коммерческие - от 20 до 30%
Потребительские флешки выделяют под ротацию от 7 до 10% емкости, а коммерческие - от 20 до 30%

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

Кстати, по этой причине, некоторые производители заявляют для накопителей меньший объем, чем используется по факту. Наверняка вы встречали в продаже флешки или SSD на 480 ГБ, а не на 512. Те самые 32 ГБ, которые якобы “не доложили”, могут быть заблокированы и использоваться исключительно для ротации.

Впрочем, это не общее правило. Есть флешки - особенно это касается недорогих решений с AliExpress - не используют принцип ротации вообще. Сделать это им не позволяет контроллер, который слишком примитивен и дешев. Или же их производители не могут позволить себе выделить дополнительный объем под замену из соображений экономии.

Что такое бэд блоки и почему лучше покупать хорошие флешки

Помимо различий в подсчетах емкости накопителя и резервировании ячеек, есть еще и третий фактор, вызывающий нехватку памяти, который обычно не учитывается. Существует допустимое количество "мертвых" блоков (бэд-блоки), с которыми накопители могут поступить в продажу.

Их объем может достигать 1% от совокупного объема флешки.

Часть блоков памяти на флешке может быть недоступна уже из коробки, и это нормально
Часть блоков памяти на флешке может быть недоступна уже из коробки, и это нормально

Ситуации, когда часть объема накопителя недоступна уже из коробки, стали частым явлением, вызванным утончением производственного техпроцесса. Если раньше каждая ячейка вмещала в себя только 1 бит информации (SLC), то сегодня они могут вмещать до 4 бит (QLC).

Высокая плотность "набивки" заставила производителей делать диэлектрики в составе ячеек новых накопителей тоньше, чем они были раньше. Из-за этого иногда они выходят из строя еще на этапе контроля качества, когда через них прогоняют сильные заряды электрического тока, тестируя  работоспособность.

Для выявления таких блоков используется система под названием Bad Block Management. Та же самая, которая применяется для ротации. Она выявляет повреждения и меняет те блоки, которые оказались неработоспособны, на рабочие.

Ответственные производители стараются, чтобы количество поврежденных блоков было минимальным. Поэтому они не позволяют себе использовать восстановленные (refurbished) чипы памяти, тогда как для китайцев, которые торгуют своими поделками на AliExpress, это обычное дело. Так что не стоит экономить на накопителях, даже если это простая флешка. Особенно, если храните на них важные данные.