Вопрос
Я действительно обеспокоен тем, что флэш-память просто не надежна как хранилище для незаменимых файлов. Кто-нибудь знает, есть ли целостность (испорченность) флеш-памяти (флешки, карты памяти - SSD?) зависит от системы и ее ресурсной нагрузки?
То есть если ты пишешь (или читаешь?) на флэш-накопитель USB или карту памяти, когда система находится под нагрузкой (что-то в фоновом режиме загружает процессор на 100%, расходует много памяти или вызывает перегрузку жесткого диска), может ли это привести к повреждению данных, записанных или прочитанных с флэш-устройства?
Фон
Недавно я приобрел два совершенно новых флэш-накопителя (карту памяти Kingston и USB-накопитель Kingston). Я скопировал папку с большим количеством файлов в оба (одновременно), и когда я сравнил их с источником (и друг с другом), я обнаружил, что некоторые файлы были показаны как разные. Некоторые из них были ложноположительными, и их повторное сравнение заставляло их уходить (они снова внезапно стали идентичными), в то время как некоторые были постоянно испорчены (у некоторых было 8 байтов подряд, у некоторых - несколько десятков подряд). После повторного копирования поврежденных файлов и их сравнения они показались идентичными.
наблюдения
Кажется, это не связано с системой (например, плохая память), потому что я видел, как это происходит на ноутбуке и настольном компьютере. И при этом это не зависит от ОС; это произошло на 64-битной 7 и 32-битной XP. Кажется, это не связано с портом USB или устройством чтения карт памяти (опять же, с разными системами). Это даже не само устройство (я видел это на картах памяти SanDisk и Kingston и USB-накопителях). К сожалению, я не могу делать какие-либо тесты, потому что, хотя он не полностью прерывистый, он случайный (я могу заставить его произойти, но не смог бы контролировать результаты).
Кажется, что единственным фактором, который кажется даже немного последовательным, когда это происходит, является нагрузка на ресурсы системы, которая выполняет чтение или запись во флэш-память. Похоже, что устройство не может получить данные достаточно быстро - как будто флэш-накопители и карты работают очень быстро (¬_¬)
- поэтому оно пишет ненужные файлы и продолжает работать, так же, как для записи компакт-диска или DVD требуется постоянное, устойчивое поток данных без прерывания, чтобы избежать повреждения диска (даже со встроенным буфером).
Действительно ли так работают флеш-накопители? Если так, то почему? Почему они не похожи на жесткие диски, на выполнение которых просто требуется больше времени? Конечно, в наши дни системы спроектированы так, чтобы быть динамическими и использовать переменные и обработку ошибок, вместо того, чтобы ожидать, что все операции завершатся в произвольно заданное время, и потерпят неудачу, если это не так.