Оказывается, флешки нужно заряжать. Это не шутка

Николай Маслов avatar | 26
FavoriteLoading В закладки
Оказывается, флешки нужно заряжать. Это не шутка

Вы заряжаете свои флешки? Конечно нет, что за глупость. Это же шутка для далёких от электроники людей.

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

Смешно. Но совсем не долго: теория подсказывает, что без подзарядки данные на флеш-накопителях должны портиться. А практика это подтверждает.

Как же так? Что делать? Заряжать флешки – вопреки удивлению гуманитариев.

Вспоминаем: как хранится информация и типы накопителей

Как известно, хранение данных может производиться на 2 типах запоминающих устройств:

  • требующих постоянного питания — энергозависимых (оперативная память, кэш процессоров)
  • не требующих постоянного питания — энергонезависимых (магнитные и оптические накопители, флеш-память)

С первыми более-менее понятно даже начинающим гикам: принципы их работы отлично изложены в энциклопедиях.

Если совсем кратко: есть питание — данные на месте; нет питания — данные утеряны, поскольку все ячейки памяти, работающие по принципу транзистора, обнулены.

Энергонезависимые носители предполагают длительное хранение данных, основанное на самых разнообразных способах.

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

Считается, что ячейки такой памяти не подвержены старению, а единократно записанная на них информация не повреждена. Увы, это не так.

Магнитный HDD может через пару лет уйти в отказ из-за размагниченных блоков, оптические диски подвержены старению отражающего слоя, магнитная лента становится хрупкой и размагничивается.

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

Длительно хранящиеся без питания твердотельные накопители способны не только терять данные, но и портиться целиком. Причем, чем теплее, тем быстрее идёт процесс. И вот почему.

SSD-диски и флеш-накопители не так просты, как кажется

Обычная USB-флешка, вне зависимости от формата и разъемов, которыми она оборудована, имеет определенную структуру.

Будь то microSD для фотоаппарата, крошечный Lightning-накопитель или современный стик с USB 3.0, внутри находится контроллер и NAND-flash память в виде отдельных микросхем.

1. Память этого типа разделена на блоки по несколько мегабайт.

2. Блок, в свою очередь, состоит из страниц в десятки килобайт каждый.

3. Перед каждой записью данных блок постранично стирается (перезаписывается определенным значением).

4. Внутри блока каждая страница должна записываться строго в порядке возрастания номера.

5. Каждая страница может быть записана целиком, но только единожды до следующего стирания.

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


Принципиальная схема работы памяти на всех уровнях. Контроллер реализует тот самый FTL

Чтобы записывать данные быстро и без проблем для пользователя, контроллер USB-флешки превратился в полноценный процессор, который

1) строит таблицу адресов (аналогичную используемой в жестких дисках),

2) собирает мусор, размечая его для последующего стирания,

3) оптимизирует износ памяти, записывая данные максимально равномерно по всем блокам,

4) отслеживает «битые» блоки, «забывая» их номера в таблице адресов или подменяя их более «живыми».

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

Для того, чтобы разобраться, придётся копать ещё глубже.

Как устроена твердотельная флеш-память?

Причины утери данных лежат, как ни странно, в тех же физических законах, что отвечают за долговременное хранение данных на твердотельных накопителях.

Принцип хранения информации флеш-памяти использует стандартную схему хранения заряда в конденсаторе.


Смеха работы ячейки памяти

Реализовано это так, что каждый бит представляет собой ячейку-транзистор с плавающим затвором, в который инжектируется заряд.

Фактически, он является одной из обкладок конденсатора.

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


Чуть более подробное описание работы ячейки

Поэтому сохраняемый в них заряд легко преодолевает границы, что ведёт к большим токам утечки.

Чем выше температура, тем быстрее электроны и выше ток утечки. Соответственно, тем быстрее разряжается «ячейка-конденсатор», из-за чего информация теряется.

Ячейки при потере информации могут использоваться повторно, если записать на неё данные вновь. Однако только до истечения собственного ресурса и полной утери свободного заряда.

При этом серьезно теряется ресурс: процесс чем-то похож на полностью разряженный аккумулятор, который нужно перед использованием «толкнуть», зарядив повышенным током.

Контроллер спасает данные от потери. Но не всегда


Схема работы с ячейками с точки зрения контроллера

Контроллер хранит таблицу всех блоков flash-памяти в которой есть количество циклов перезаписи этого блока и когда была его последняя перезапись.

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


Схема работы диска с точки зрения данных

Время операции и ожидания зависит от конкретного контроллера и от конкретной микросхем флэша — на усмотрение производителя.

Именно так выравнивается износ и предотвращается потеря пользовательских данных из-за утечки зарядов в ячейках.

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

Но только в то время, когда диск в работе или хотя бы подключен к питанию.

Так куда пропадают данные?

Как только SSD-диск или флешка остаются на длительное время без питания, вероятность отказа начинает расти.

Дело в том, что переразметка и перезапись производится только во время простоя.

Больше того: чем старше и сильнее изношен диск, чем больше он прошел циклов записи, тем отказов больше.

Процесс не зависит от используемых модулей памяти, года выпуска и типа диска. Даже серверные отказоустойчивые накопители теряют данные.


Время жизни данных на изношенных дисках относительно температур – рабочей и хранения

Кстати, о них есть огромное аналитическое исследование, утверждающее, что при высокой температуре данные после выработки ресурса в некоторых случаях хранятся всего пару недель.

Скажете, статья старая? Вот только с тех пор модули памяти стали дешевле, проще, а плотность их ячеек — выше (можно почитать здесь). Поэтому процесс идёт ещё быстрее.

SSD-диски поддерживают команду TRIM, которая улучшает сохранность данных. Аналог есть у SD и microSD-карт памяти, в промышленных USB-накопителях.

Дешёвые флешки и устаревшие форматы карт памяти (например, CF) фишку не поддерживают, поэтому данные они стирают только при обращении к ячейке.

И часть блоков никогда не перезаписывается, «протухая».


Здесь показано схематичное уплотнение памяти. Сами понимаете, стенки толще не становятся

Известно, что SLC-память хранит данные несколько десятков лет, MLC — несколько лет без питания, TLC и вовсе около полугода, а многострадальные QLC может потерять все за пару недель.

По поводу выработки ресурса тоже есть неприятный момент: реальные цифры известны только производителю, а все тесты и замеры проводятся исключительно в рабочих режимах.

Поэтому ресурс может быть на порядок ниже предполагаемого.

Что нужно делать, чтобы флешки не теряли данные

Итак, что же нужно, чтобы данные с накопителей не пропадали? Ничего сложного: нужно оставлять их в USB без нагрузки.

Скопировали данные, поработали с флешки — оставьте её подключенной к включенному компьютеру хотя бы на полчаса.

Через некоторое время можно будет обратить внимание, что диск нагреется, а лампочки при наличии — загорятся, как во время работы.

Это и будет говорить о работе контроллера по переразметке данных. Хотя флагманские серии твердотельных дисков никак не выдают эти процессы.

Стоит учитывать, что работа проходит достаточно долго — ориентировочно, как при дефрагментации жестких дисков.

Поэтому короткие периоды подключения в простоя необходимо дополнять, оставляя диск подключенным на ночь, например.

Не забывайте заряжать свои флешки!

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (282 голосов, общий рейтинг: 4.68 из 5)
🤓 Хочешь больше? Подпишись на наш Telegram.
... и не забывай читать наш Facebook и Twitter 🍒
FavoriteLoading В закладки
undefined
iPhones.ru
Иначе от данных и накопителей ничего не останется.
Прокомментировать

🙈 Комментарии 26

  1. ​? avatar
    ​?25 марта в 13:34
    3

    Какие флэшки? Еще про дискеты вспомните. Флэшку последний раз лет 10 назад использовал

  2. axinfernis avatar
    axinfernis25 марта в 14:04
    4

    “оставляя диск подключенным на ночь”
    Достаточно 10сек. раз в пол года )) Какая ночь ?

    Николай Маслов avatar
    Николай Маслов25 марта в 17:07
    0

    Там же зависимость от объема накопителя, количества заполненных блоков и контроллера. На деле, время не определено – может и 10 секунд, может дольше.

  3. durdin avatar
    durdin25 марта в 14:04
    1

    Ну понятно, пойду заряжать!

  4. Xiaomi1993 avatar
    Xiaomi199325 марта в 14:25
    11

    Посоветуйте лучшую зарядочную станцию для флешек. Также вопрос, стоил заряжать шнуры usb и внешние жесткие диски?

  5. Андрей К. avatar
    Андрей К.25 марта в 14:47
    2

    🤦🏻‍♂️🤦🏻‍♂️🤦🏻‍♂️

  6. collder avatar
    collder25 марта в 15:49
    3

    @николай , но заряжать и подавать питание – это же совсем разные термины.

    П.С. Лучшее сохранение данных это бекап. В двух разных местах.

    Николай Маслов avatar
    Николай Маслов25 марта в 17:06
    0

    Согласен с вами. Но ведь звучит лучше и смешнее!) И кликбейт никто не отменял, благо в данном случае процесс идентичен для пользователя и заключается в одних и тех же действиях.

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

    bigscrap avatar
    bigscrap25 марта в 18:14
    0

    @Николай Маслов, У вас там первое апреля досрочно запустили что ли? за время что вы указали в качестве рекомендации ячейки успеют “зарядиться” раз миллион каждая.
    но в целом хотелось бы вживую глянуть на флешку которая будучи новой “забывает данные” через две недели.

    Николай Маслов avatar
    Николай Маслов25 марта в 19:20
    0

    В тексте статьи есть пруф в виде ссылки и картинки, не поленитесь.

    Дело не в том, что они должны зарядиться – если бы дело было в зарядке, вопросов бы не было. Дело в том, что они должны для “зарядки” быть перезаписаны.

  7. Kiri11 avatar
    Kiri1125 марта в 16:14
    8

    Подготовили статью к 1 апреля, но случайно опубликовали раньше.

    Сергей Березюк avatar
    Сергей Березюк25 марта в 16:17
    2

    @Kiri11, Прям с языка снял )

  8. 3net avatar
    3net25 марта в 17:41
    0

    Недавно нашел флешку,которую думал потерял 5 лет назад,вставил в комп,все на месте фотки,видос,музон,книги в fb2

    bigscrap avatar
    bigscrap25 марта в 18:15
    3

    @3net, ваша флешка просто не в курсе.

    Skynet avatar
    Skynet25 марта в 19:01
    2

    @3net, молодость там же, я так понимаю :D

  9. catfelix avatar
    catfelix25 марта в 20:45
    1

    Во флешках стоит энергонезависимая память. Специально проверил карту памяти, идущую в комплекте с Nokia N71 – всё на месте, ничего не пропало (карта Nokia 128 MB miniSD – не трогал её с 2007 года).😀

    Николай Маслов avatar
    Николай Маслов26 марта в 14:59
    0

    А установка Linux на CF-карту убивает диск уже в процессе) Все неоднозначно, увы.

    Николай Маслов avatar
    Николай Маслов26 марта в 15:02
    0

    Побитово считывали, или просто в Проводнике открыли? Это несколько разные вещи.

  10. virtualinsanity avatar
    virtualinsanity25 марта в 23:20
    2

    А еще голову в холоде, а яйца в тепле… ну и шапочку из фольги ;)

  11. Tusk83 avatar
    Tusk8326 марта в 0:00
    0

    А есть ещё в интернете подобные статьи? Если нет, то это сыроватая теория. Может, данные пропадут через 100 лет, но явно не через 5-10.

    Николай Маслов avatar
    Николай Маслов26 марта в 15:01
    0

    Массовой статистики нет. Отдельные случаи описываются с завидной частотой на профильных ресурсах. Чаще всего подвержены диски старше 5-7 лет, либо с достаточно активной эксплуатацией.

    В некоторых устройствах, активно использующих microSD для хранения кэша, сталкивался с подобным неоднократно сам – дешевые карты выходили из строя каждые 4-6 месяцев.

  12. ivoryblade avatar
    ivoryblade26 марта в 9:10
    0

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

    walkman00 avatar
    walkman0027 марта в 18:25
    0

    @ivoryblade, у нормального архива на такой случай есть данные для восстановления.

  13. walkman00 avatar
    walkman0027 марта в 18:25
    1

    Берем старую статью с Хабра и пишем новость :)

  14. SanSan4 avatar
    SanSan41 апреля в 11:13
    1

    Взаимно. С 1 апреля!

  15. roman6145 avatar
    roman61457 апреля в 17:21
    1

    Ну вот…подали идею….теперь китайцы начнут на али зарядки для флешек продавать)))

Вы должны авторизоваться или зарегистрироваться для комментирования.

Нашли орфографическую ошибку в новости?

Выделите ее мышью и нажмите Ctrl+Enter.

Как установить аватар в комментариях?

Ответ вот здесь