Вы заряжаете свои флешки? Конечно нет, что за глупость. Это же шутка для далёких от электроники людей.
Я тоже не заряжал, пока один очень умный человек, занимающий серьезный пост на заводе, производящем электронные компоненты, не показал пару интересных статей. Заодно напомнил, что память работает по тем же принципам, что и любые другие проводники.
Смешно. Но совсем не долго: теория подсказывает, что без подзарядки данные на флеш-накопителях должны портиться. А практика это подтверждает.
Как же так? Что делать? Заряжать флешки – вопреки удивлению гуманитариев.
Вспоминаем: как хранится информация и типы накопителей
Как известно, хранение данных может производиться на 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 без нагрузки.
Скопировали данные, поработали с флешки — оставьте её подключенной к включенному компьютеру хотя бы на полчаса.
Через некоторое время можно будет обратить внимание, что диск нагреется, а лампочки при наличии — загорятся, как во время работы.
Это и будет говорить о работе контроллера по переразметке данных. Хотя флагманские серии твердотельных дисков никак не выдают эти процессы.
Стоит учитывать, что работа проходит достаточно долго — ориентировочно, как при дефрагментации жестких дисков.
Поэтому короткие периоды подключения в простоя необходимо дополнять, оставляя диск подключенным на ночь, например.
Не забывайте заряжать свои флешки!
26 комментариев
Форум →Какие флэшки? Еще про дискеты вспомните. Флэшку последний раз лет 10 назад использовал
“оставляя диск подключенным на ночь”
Достаточно 10сек. раз в пол года )) Какая ночь ?
Там же зависимость от объема накопителя, количества заполненных блоков и контроллера. На деле, время не определено – может и 10 секунд, может дольше.
Ну понятно, пойду заряжать!
Посоветуйте лучшую зарядочную станцию для флешек. Также вопрос, стоил заряжать шнуры usb и внешние жесткие диски?
🤦🏻♂️🤦🏻♂️🤦🏻♂️
@николай , но заряжать и подавать питание – это же совсем разные термины.
П.С. Лучшее сохранение данных это бекап. В двух разных местах.
Согласен с вами. Но ведь звучит лучше и смешнее!) И кликбейт никто не отменял, благо в данном случае процесс идентичен для пользователя и заключается в одних и тех же действиях.
Причем физически бэкап должен быть совершенно различным по принципам хранения, все может подвести. И изредка его нужно перечитывать-проверять.
@Николай Маслов, У вас там первое апреля досрочно запустили что ли? за время что вы указали в качестве рекомендации ячейки успеют “зарядиться” раз миллион каждая.
но в целом хотелось бы вживую глянуть на флешку которая будучи новой “забывает данные” через две недели.
В тексте статьи есть пруф в виде ссылки и картинки, не поленитесь.
Дело не в том, что они должны зарядиться – если бы дело было в зарядке, вопросов бы не было. Дело в том, что они должны для “зарядки” быть перезаписаны.
Подготовили статью к 1 апреля, но случайно опубликовали раньше.
@Kiri11, Прям с языка снял )
Недавно нашел флешку,которую думал потерял 5 лет назад,вставил в комп,все на месте фотки,видос,музон,книги в fb2
@3net, ваша флешка просто не в курсе.
@3net, молодость там же, я так понимаю :D
Во флешках стоит энергонезависимая память. Специально проверил карту памяти, идущую в комплекте с Nokia N71 – всё на месте, ничего не пропало (карта Nokia 128 MB miniSD – не трогал её с 2007 года).😀
А установка Linux на CF-карту убивает диск уже в процессе) Все неоднозначно, увы.
Побитово считывали, или просто в Проводнике открыли? Это несколько разные вещи.
А еще голову в холоде, а яйца в тепле… ну и шапочку из фольги ;)
А есть ещё в интернете подобные статьи? Если нет, то это сыроватая теория. Может, данные пропадут через 100 лет, но явно не через 5-10.
Массовой статистики нет. Отдельные случаи описываются с завидной частотой на профильных ресурсах. Чаще всего подвержены диски старше 5-7 лет, либо с достаточно активной эксплуатацией.
В некоторых устройствах, активно использующих microSD для хранения кэша, сталкивался с подобным неоднократно сам – дешевые карты выходили из строя каждые 4-6 месяцев.
Не обязательно что у вас флешка прям форматироваться попросит спустя годы лежания в тумбочке, но отдельный биты могут быть утеряны на фотках вы этого можете не заметить а вот допустим архив с повреждениями а тем более с шифрованием уже не откроете. Более того проблема повреждения хранящихся данных есть даже на HDD, в том числе поэтому в ZFS есть операция scrub для поиска и ремонта таких тихих повреждений
в массивах дисков.
@ivoryblade, у нормального архива на такой случай есть данные для восстановления.
Берем старую статью с Хабра и пишем новость :)
Взаимно. С 1 апреля!
Ну вот…подали идею….теперь китайцы начнут на али зарядки для флешек продавать)))
Нашли орфографическую ошибку в новости?
Выделите ее мышью и нажмите Ctrl+Enter.Как в macOS изменить настройки сглаживания шрифтов
Как при работе на Mac зафиксировать своё внимание на одном приложении
Как очистить словарь клавиатуры на iPhone. Автокоррекция заработает правильно
Можно ли удалить фото с iPhone, чтобы оно осталось в iCloud
Как восстановить недавно удаленные файлы из iCloud
Как записывать разговоры на iPhone
Как изменить тариф подписки, если в приложении из App Store нет такого раздела
Почему перестали работать некоторые кнопки на клавиатуре Mac