Рис.2 Чтение при отсутствии заряда[3]
|
Чтение при отсутствии заряда
При чтении, в отсутствие заряда на
"плавающем" затворе, под воздействием положительного поля на
управляющем затворе, образуется n-канал в подложке между истоком и стоком, и
возникает ток.
|
Чтение при наличии заряда
Наличие заряда на
"плавающем" затворе меняет вольтамперные характеристики транзистора
таким образом, что при обычном для чтения напряжении канал не появляется, и
тока между истоком и стоком не возникает.
|
Рис.3 Чтение при отсутствии заряда[3]
|
Рис.4 Запись[3]
|
Запись
При программировании на сток и
управляющий затвор подаётся высокое напряжение (причём на управляющий затвор
напряжение подаётся приблизительно в два раза выше). "Горячие"
электроны из канала инжектируются на плавающий затвор и изменяют
вольтамперные характеристики транзистора. Такие электроны называют
"горячими" за то, что обладают высокой энергией, достаточной для
преодоления потенциального барьера, создаваемого тонкой плёнкой диэлектрика.
|
Стирание
При стирании высокое напряжение
подаётся на исток. На управляющий затвор (опционально) подаётся высокое
отрицательное напряжение. Электроны туннелируют на исток.
|
Рис.5 Стирание[3]
|
Многоуровневые ячейки
Рис. 6 Одноуровневая и
многоуровневая ячейка
Через несколько лет после
выпуска флеш-дисков были проведены успешные испытания микросхем, в которых
ячейка хранила уже два бита. На такую память можно было записать в два раза
больше информации. В настоящее время уже
существуют теоретические
разработки памяти с четырехбитными ячейками. В микросхеме с MLC (MultiLevel
Cell) существует различие величин заряда, которые накапливаются на “плавающем”
затворе. Благодаря этому различию, информация в ячейке может быть представлена
различными битовыми комбинациями, то есть в отличие от "обычной"
флеш-памяти, MLC способна различать более двух величин зарядов, помещённых на
"плавающий" затвор, и, соответственно, большее число состояний. При
этом каждому состоянию в соответствие ставится определенная комбинация значений
бит. Величину заряда на затворе можно определить измерением порогового
напряжения транзистора и по итогам этого измерения представить битовую
комбинацию. В настоящее время многие компании находятся в поисках предельного
числа бит, которое способна хранить многоуровневая ячейка. Во время записи на
"плавающий" затвор помещается количество заряда, соответствующее
необходимому состоянию. От величины заряда на "плавающем" затворе
зависит пороговое напряжение транзистора. Пороговое напряжение транзистора
можно измерить при чтении и определить по нему записанное состояние, а значит и
записанную последовательность бит. Микросхемы с MLC нашли своё применение в технологии Intel Strata flash.[2]
Доступ к флеш-памяти
Различают три метода
доступа к микросхеме: обычный, пакетный и страничный. Все они используются в
зависимости от ситуации, так как отличаются по скорости доступа, имеют свои
преимущества и недостатки.
§ Обычный доступ (Conventional). Произвольный асинхронный доступ к
ячейкам памяти. Используется в тех ситуациях, когда необходимо считать малое
количество информации с микросхемы памяти.
§ Пакетный (Burst). Синхронный, данные читаются
параллельно, блоками по 16 или 32 бита за один раз. После чтения информации в
буфер происходит синхронизация блоков, и, в конечном итоге, данные передаются
уже последовательно. Преимущество перед обычным типом доступа - быстрое
последовательное чтение данных. Недостаток - медленный доступ при чтении
определённых ячеек памяти.
§ Страничный (Page). По принципу напоминает пакетный
вид, но данные принимаются асинхронно, блоками по 4 или 8 слов. Преимущества -
очень быстрый произвольный доступ в пределах текущей страницы. Недостаток -
относительно медленное переключение между блоками.
В последнее время появились микросхемы
флеш-памяти, позволяющие одновременную запись и стирание (RWW - Read While
Write или Simultaneous R/W) в разные банки памяти.
Архитектура флеш-памяти
Существует несколько
типов архитектур (организаций соединений между ячейками) флеш-памяти. Наиболее
распространёнными в настоящее время являются микросхемы с организацией NOR
и NAND.
NOR
Название NOR ведет свою
родословную от логической операции Not OR (не «или»): если хотя бы один
из транзисторов, подключенных к линии битов, включен, то считывается
"0". NOR-Ячейки работают сходным с EPROM способом. Каждый
транзистор-ячейка подключен к трем линиям: Word Line (линия слов), Select
Line (линия выборки) и Bit Line (линия бит). Выборка осуществляется
путем подачи высокого напряжения на Word Line, подключенную к затвору, и
наблюдения за разницей потенциалов между Select Line (исток) и Bit Line (сток).
Если на плавающем затворе находилось достаточное количество электронов, то их
отрицательное поле препятствовало протеканию тока между истоком и стоком и
напряжение оставалось высоким. Такое состояние полагается в терминах
флеш-памяти нулем, в противоположном случае считывается единица.

Программирование - методом инжекции
"горячих" электронов.
Стирание - методом туннеллирования Фаулера-Нордхейма.
Преимущества - быстрый произвольный доступ,
возможность побайтной записи. Недостатки - относительно медленная запись
и стирание.
Основные производители: AMD, Intel, Sharp, Micron, Ti,
Toshiba, Fujitsu, Mitsubishi, SGS-Thomson, STMicroelectronics, SST, Samsung,
Winbond, Macronix, NEC, UMC.
Из двух типов имеет
наибольший размер ячейки, а потому плохо масштабируется. Единственный тип
памяти, работающий на двух разных напряжениях. Идеально подходит для хранения
кода программ (PC BIOS, сотовые телефоны), представляет собой идеальную замену
обычному EEPROM.
NAND
NAND является более
выгодным, с точки зрения экономии пространства, способом организации ячеек.
Транзисторы подключаются к битовым линиям группами, то есть последовательно.
Если все транзисторы группы открыты, включены, Bit Line заземляется, напряжение
между ней и Word Line падает до нуля: срабатывает логика Not AND (не «и») -
если все элементы равны 1, то выдается 0. Правда, считывание затруднено
вследствие падения напряжения на гирлянде транзисторов, однако скорость
обращения повышается за счет адресации сразу целой группы битов. При
произвольном доступе достоинство превращается в недостаток, и NAND-чипы обычно
отличаются от NOR наличием дополнительного внутреннего кэша. Учитывая всё
вышесказанное, NAND-память
представляет собой наиболее подходящий тип памяти для устройств,
ориентированных на блочный обмен: MP3 плееров, цифровых камер и в качестве
заменителя жёстких дисков.[5]
Рис.8
Архитектура NOR[12]
Доступ - произвольный, но небольшими
блоками, которые можно рассматривать как кластеры жёсткого диска.
Интерфейс – последовательный, произвольное
чтение и запись невозможны. Не очень подходит для задач, требующих
произвольного доступа к данным.
Преимущества – запись и стирание информации
осуществляются на высокой скорости, размер блока небольшой.
Недостатки - относительно медленный
произвольный доступ, невозможность побайтной записи, необходимость использовать
внутренний кэш.
Основные производители - Toshiba, AMD/Fujitsu, Samsung,
National, Mitsubishi.
Программирование - туннеллированием Фаулера-Нордхейма, в отличие от NOR-памяти.
Стирание - туннеллированием Фаулера-Нордхейма, в этом сходство с NOR-памятью.
Развитие технологии
флеш-памяти происходит, в основном, в области совершенствования конструкции
ячеек. Так, появились варианты с двумя транзисторами: один из пары является
обыкновенным транзистором, изолирующим ячейку от Word Line. Благодаря этому
удалось избавиться от паразитных перекрестных наводок, возникающих при стирании
одной из страниц данных, а также снизить напряжение программирования. Причем
второй транзистор занимает совсем немного места, поскольку он лишен функции
запоминающего "конденсатора" и большого плавающего затвора.
Типы карт памяти
CompactFlash
Карточки этого формата
впервые появились в 1994 г. Стандарт разработала компания SanDisk и
предоставила его для общественного пользования безо всяких дополнительных
лицензионных отчислений. В октябре 1995 г. была создана некоммерческая организация
Compact Flash
Association (CFA). Помимо, собственно, зачинщика, в нее вошли IBM, Canon, Kodak, HP, Hitachi, Epson и Socket
Communications. Разработчики создали карты Miniature Card, но они оказались не
очень удачными. Все права на технологию были проданы Centennial Technologies,
которая в 2000 г. объявила о решении выпустить в свет собственный формат
флеш-карт под названием Compact Linear Flash. Карточка содержит довольно
сложный контроллер, благодаря которому она совместима с адаптерами PCMCIA.
Питание может составлять 3,3 или 5В. Существует два класса CompactFlash-карт, в
подражание PCMCIA названных Type I и Type II. Они различаются только толщиной
(3,3 и 5 мм) и количеством чипов памяти, которые могут в них поместиться.
Стандартный размер карты 43 x 36 мм. Одно из наиболее преимуществ CompactFlash
заключается в электрической совместимости с IDE-интерфейсом. Это не означает,
что карточку можно вставить в разъем, а подразумевает возможность эмуляции
жесткого диска. На программном уровне карта ничем не отличается от винчестера:
она обладает всеми необходимыми параметрами, такими, как количество виртуальных
цилиндров и головок. Обращение к карте выполняется с помощью стандартного
прерывания IRQ 14, и для работы с CompactFlash не требуется драйверов. Сейчас
выпускаются карты CompactFlash объемом до 100 GB.
Одно из главных достоинств стандарта - специфицированный встроенный контроллер
памяти, обусловливающий четкое определение логической структуры данных.
MMC
В
ноябре 1997 г. компании Siemens и SanDisk анонсировали MMC. Стандарт был
изначально "свободным", таким же, как CompactFlash, т. е. лишенным
каких-либо лицензионных ограничений. Размер карты всего 24 x 32 x 1,4 мм, весят карты всего 1б5 грамма. Скорость передачи данных
равняется 20 MBps. Эти модули памяти
работают при напряжениях 3,3 или 2,7 В и токе до 35 мА, что и обусловливает
низкое энергопотребление. В 1998 г. сформировался альянс MMCA (MultiMedia Card
Association), объединивший промоутеров новой технологии.
Рис.12
Архитектура MMC[5]
SmartMedia
Рис.13 Внешний вид SM[4]
Стандарт был разработан в
1995 г. компанией Toshiba, а его продвижением занимается организация SSFDC
Forum, в рядах которой немало известных компаний. Кстати, SSFDC (Solid State
Floppy Disk Card) можно перевести как "твердотельная дискета".
Следует отметить, что многие производители делают флеш-карты сразу трех
основных типов: Compact Flash, SmartMedia и MultiMediaCard. В отличие от
Compact Flash, карты SmartMedia (SM) не снабжены встроенным контроллером, что,
по замыслу создателей, должно снижать их стоимость. Кроме того, SМ имеют
меньшие размеры (37x45x0,76 мм) и массу (до 2 г). По популярности SM спорят с CF, а вместе с ним оба этих стандарта охватывают более половины
рынка флеш-карт. Рабочие напряжения у SM такие же, как и у CF, но обычно
используется 3,3 В. Максимальная емкость карт, объявленная производителями, в
частности компаниями EMTEC и Delkin, составляет 128 Мбайт. Из-за отсутствия
внутреннего контроллера для работы с этими картами невозможно применить
пассивный переходник, а считыватели для них стоят около 50 долл. К сожалению,
SМ не дешевле, чем CF.
Memory Stick
Некогда Sony заставила
компьютерную индустрию выбрать в качестве сменных носителей свои 3,5-дюймовые
флоппи-дисководы, а теперь она решила позаботиться о своих позициях и на аудио
рынке, для чего разработала новый стандарт флеш-карт Memory Stick (MS).
Эти 10-контактные
устройства размерами 21,5x50x2,8 мм и массой 4 г стали опорой цифровой империи Sony, которая устанавливает их в свои цифровые плееры, фотоаппараты
и видеокамеры, также игрушки и другие устройства. Карты памяти Memory Stick
имеют ёмкость до 16 Гб, а в некоторых подверсиях, Memory Stick Select,
применялись два банка по 128 Мб на одной карте.
SecureDigital
Размер карты
- 24 x 32 x 2,1 мм, что практически соответствует параметрам Magic Stick Duo. В
настоящий момент анонсированы изделия емкостью от 8 до 512 MB при максимуме 16
GB. Скорость записи, что типично для флеш-карт,
существенно зависит от объема и, следовательно, количества используемых чипов.
Стандартная скорость записи составляет 2 MBps, но начиная с 512 MB носителей,
она возрастает многократно до 10 MBps. Карты оснащены механическим
переключателем защиты от записи, наподобие защелки "read-only" у
флоппи-дисков. Каждая SD-карта содержит два контроллера: ввода/вывода и
поддержки системы кодирования. Разъем состоит из девяти контактов, четыре из
которых предназначены для передачи данных, один используется для передачи команд
и еще один отведен под синхросигнал.
xD-Picture
Card
Данный формат
— своеобразное "логическое продолжение" SmartMedia, предложенное в 2002 г. компаниями Fujifilm и Olympus. Основные преимущества спроектированного изделия: сниженная
себестоимость (экономия на внутреннем контроллере), небольшие размеры (20 x 25
x 1,7 мм) и невысокое энергопотребление. Аббревиатура xD означает eXtreme
Digital, т. е. экстремально цифровые.
USB
флеш-накопитель
USB флеш-накопитель —
носитель информации, использующий флеш-память для хранения данных и
подключаемый к компьютеру или иному считывающему устройству через стандартный
разъём USB.
Рис.18 Устройство типичного USB Flash Drive
(на примере изделия фирмы «Saitek»: 1 — USB-разъём; 2 — микроконтроллер; 3 —
контрольные точки; 4 — микросхема флеш-памяти; 5 — кварцевый резонатор; 6 —
светодиод; 7 — переключатель «защита от записи»; 8 — место для дополнительной
микросхемы памяти
USB флеш-накопители
обычно съёмные и перезаписываемые. Размер — около 5 см, вес — меньше 60 г. Получили большую популярность в 2000-е годы из-за компактности, лёгкости перезаписывания
файлов и большого объёма памяти (от 32 МБ до 256 ГБ[1]). Основное назначение
USB-накопителей — хранение, перенос и обмен данными, резервное копирование,
загрузка операционных систем (LiveUSB) и др. Разработан умещающийся на
флеш-диск пакет программ для автоматического снятия улик с компьютера
неквалифицированным полицейским (COFEE).
Применение флеш-памяти
Флеш-диски применяются в
системах управления промышленным оборудованием, в горячих цехах и на открытом
воздухе, в условиях постоянных ударов, тряски, вибрации, загрязненной
атмосферы. Системы управления, устанавливаемые на железнодорожном, водном
транспорте (вибрация, повышенная влажность) или на летательных аппаратах
(быстрая смена высоты и температуры, большие перегрузки), немыслимы без таких
устройств. И, конечно, в космических системах (перегрузки, невесомость,
энергопотребление) флеш-дискам нет конкурентов. Ситуация на отечественном рынке
ФД укладывается в рамки общемировых тенденций. Большая часть поставляемой
продукции потребляется в промышленной сфере для автоматизации производства. С
другой стороны, PCMCIA-карты на основе флеш-памяти для портативных компьютеров,
хотя и предлагаются, но не получили широкого распространения. Микросхемы
флеш-памяти может работать при температурах от -50 до 80 градусов, влажности
воздуха от 8 до 95 процентов, выдерживать ударную нагрузку до 1000g, вибрационную нагрузку до 15g. Время
наработки на отказ у флеш-памяти около 1000 часов (сюда входит время записи и
стирания), а срок хранения данных исчисляется десятками лет. Флеш-память
применяется практически во всех современных устройствах: сотовых телефонах,
портативных компьютерах,mp3-плейерах,
цифровых видеокамер и фотоаппаратах и многих других. Флеш-память используется в
любых компьютерных комплектующих: микросхема BIOS на материнской плате,
прошивки различных устройств (CD-Rom, видеокарта, звуковая карта, модем).
Модемы с микросхемами флеш-памяти могут принимать и отправлять данные даже при
выключенном компьютере. Флеш-память разработана и применяется для того, чтобы
упростить работу системы, в которой она применяется, а также повысить ее
производительность. За счет обновления информации через флеш-память система
(например, модем, звуковая карта и т.д.) в гораздо меньшей степени использует
оперативную память компьютера. Тем самым повышается производительность не
только одного прибора, но и всего компьютера в целом. Использование микросхем
флеш-памяти также позволяет снизить стоимость оборудования. Флеш-память,
используя блочную архитектуру, полностью заменила собой микросхемы, стираемые
целиком.
Глава 2. Типы повреждений
Восстановление
флеш-диска может потребоваться в случае механических, электрических, тепловых,
логических повреждений и разрушения внутренней структуры.
Механические
повреждения
К
повреждениям данного типа относятся любые, внешне заметные, повреждения, а
именно: повреждения корпуса, изменения геометрии разъема, трещины, деформации и
прочее.
На
сегодняшний день существует два способа восстановления информации с физически
поврежденной флеш-карты. Первый из них заключается в определении вышедшего из
строя компонента и его замене на новый. Но поскольку запасные части для
флеш-карт не выпускаются, новый элемент берется из устройства-донора той же
модели. После замены у флеш-карты восстанавливается работоспособность, поэтому
специалисту остается только скопировать содержащиеся на ней данные на сторонний
носитель. У этого способа есть несколько недостатков. Во-первых, он возможен не
во всех случаях. Во-вторых, для его реализации необходимо найти новую
флеш-карту, идентичную поврежденной. Причем донор будет непригоден для
дальнейшего использования. Второй способ заключается в выпаивании из флеш-карты
микросхемы памяти и чтении информации с нее напрямую с помощью специального
программатора. После этого производится дешифровка считанных данных. Дело в
том, что каждый производитель флеш-карт использует собственный формат записи
информации, поэтому просто так извлечь данные не получится. Заключительный этап
- восстановление в случае необходимости целостности поврежденных файлов. Данный
способ очень критичен к профессионализму исполнителя, а также наличию
необходимого аппаратного и программного обеспечения.
Электрические и
тепловые повреждения
Нестабильное
электропитание, а также разряды статики – частая причина неисправности
флеш-дисков. Многие нынешние модели имеют слабую защиту от перепадов
напряжения, и случайные скачки выводят их из строя. Вероятно, сказывается
политика удешевления продукции, когда из схемотехники выводились «лишние»
элементы защиты. Свою долю вины несут и некачественные «китайские» блоки
питания с их пульсациями в линиях 5В. Нередко к поломке флеш-дисков приводит
устаревшая электропроводка: многие компьютеры до сих пор не заземлены. На их
корпусе может накапливаться потенциал в десятки вольт, а статический заряд
стекает куда придется. Все это, при совпадении неблагоприятных условий,
приводит к выгоранию контроллера и элементов обвязки. С учётом заряда на теле
человека, наиболее опасен бывает момент подключения.
Еще
одна причина неисправностей – "человеческий фактор" при сборке
системных блоков. Небрежные, или просто неопытные работники умудряются
неправильно подключить к материнской плате шлейф порта USB на передней панели.
Это приводит к переполюсовке линий питания, и флеш-диск сгорает при первом же
подключении. Шлейф чаще всего не экранирован, и даже правильная сборка не
избавляет от наводок внутри корпуса, вносящих искажения в работу порта.
Подключенный к нему накопитель может работать медленно, сбоить или вообще не
определяться в системе, что служит предпосылкой для ложных выводов о
неисправности.
Проблема
нагрева, для флеш-дисков, не так актуальна, как для жестких дисков с их
механикой. Но и здесь кроется причина поломок. Многие пластиковые корпуса не
обеспечивают хорошего теплоотвода, и при активной работе нагруженные детали
могут перегреться, выйти из строя и даже проплавить корпус. Чаще всего страдает
стабилизатор питания. Справедливости ради, скажем, что в новых моделях улучшена
элементная база, уделено внимание теплоотводу и проблема встречается реже.
Повышенная
температура эксплуатации вредна и для чипов флеш-памяти. Хотя по спецификациям
они выдерживают до 125º, на практике, уже начиная с 70º, их ресурс
резко падает, а вероятность сбоев растёт. Достичь такого нагрева проще, чем кажется
из-за соседства с силовыми деталями в тесном корпусе. Что касается карт памяти,
то реальна опасность их повреждения статическим разрядом в процессе вставки или
извлечения из слота. Особенно уязвимы карты с открытыми контактами, наподобие
MMC; «пробить» статикой CF или MS труднее по очевидным причинам.
Разрушение
внутренней структуры
При
разрушении внутренней структуры накопитель определяется с неправильной емкостью
или вообще не определяется системой. Как уже говорилось, в большинстве случаев
Flash накопители работают под управлением собственного контроллера-процессора,
который работает по определенному алгоритму. Стоимость патентов на
использование уже известных алгоритмов чрезвычайно высока, поэтому каждая
фирма-производитель таких носителей старается создать свой алгоритм внутренней
работы и получить на него патент. Таким образом, к настоящему времени сложилось
огромное многообразие алгоритмов внутренней работы накопителей и даже у одной
фирмы-производителя может быть несколько таких алгоритмов (например, свой
алгоритм для каждой модельной линии). Это усложняет восстановление флеш-карт. Физические
особенности Flash памяти отрицательно сказываются на надежности носителя.
Излишняя интенсивность использования носителей на Flash памяти приводит к
появлению сбоев в их работе. К сожалению, неисправности внутренней структуры,
из-за обилия алгоритмов работы, в большинстве случаев требуют индивидуального
подхода и являются наиболее трудоемкими. При таких нарушениях приходится
снимать микросхемы памяти, считывать их и анализировать внутренний алгоритм
работы, после выявления этого алгоритма требуется настройка специализированного
программного обеспечения, а в некоторых случаях и написание дополнительных
модулей для восстановления информации на флеш-диске. Только после этого
возможно создание корректного файла-образа, из которого уже можно
восстановление данных с флеш-диска.
Логические
повреждения
Во-первых,
это повреждения в результате программного сбоя или аппаратных особенностей
служебной области данных, используемой контроллером в работе механизма
трансляции. Виной этому, прежде всего, износ, приводящий к появлению
избыточного числа битовых ошибок, которые невозможно скорректировать
реализованным алгоритмом ECC. Не менее вероятны и сбои внутреннего программного
обеспечения.
Во-вторых,
ухудшение теплопроводности корпуса флеш-накопителя приводит к повышению
температуры внутренних компонентов, что повышает вероятность сбоев и
возникновения ошибок. Сообщения операционной системы о необходимости
отформатировать накопитель или предложение «Вставить диск» — это как раз
последствия и признаки подобных ошибок. При этом зачастую накопитель как
физическое устройство в системе определяется идентификатором производителя
(Vendor ID) и типом устройства (Device ID), соответствующим установленному в
нем контроллеру. При обнаружении неустранимой ошибки служебной области,
контроллер перестает обращаться к микросхемам памяти, возвращая в ответ на
команду чтения заранее сформированный сектор (чаще всего, заполненный нулями).
Еще он может «информировать» об отсутствии носителя. Подобная тактика
объясняется, главным образом, необходимостью уменьшить влияние на микросхемы
памяти и не допустить дальнейшего повреждения данных. При этом данные, в
большинстве случаев, остаются полностью корректными и располагаются в
микросхемах памяти, но доступ к ним посредством штатного интерфейса становится
невозможным. Применение общедоступных специализированных утилит при
повреждениях служебной информации иногда позволяет вернуть накопителю
работоспособность, но при этом пользовательские данные почти наверняка будут
уничтожены. Действия, выполняемые стандартными утилитами от производителя,
состоят из стирания всех микросхем памяти и восстановления формата поврежденной
служебной области. Идет переучет блоков с нестабильным чтением. Сохранение
данных пользовательской зоны не является приоритетным при такой операции,
подобное требование значительно усложнило бы утилиту. В подобных случаях
наиболее надежным методом восстановления данных является применение специализированных
комплексов, которые позволяют работать напрямую с микросхемами памяти, реализуя
эмуляцию работы контроллера без применения штатного, аппаратного контроллера и
интерфейса.
Средства
восстановления данных
Программно-аппаратные
средства восстановления данных
Программно-аппаратный
комплексы предназначены для восстановления данных с физически неисправных
флеш-накопителей, в ситуации, когда доступ к содержимому флеш-микросхем
посредством штатного интерфейса, реализуемого контроллером, невозможен.
К
данному типу относятся все типы флеш-накопителей (SD, SM, MMC, USBFlash,
MemoryStick, CompactFlash и др.), контроллер которых поврежден, либо содержащие
значительные механические или электрические повреждения платы, препятствующие
нормальному функционированию устройства. Рассмотрим этот класс устройств на
примере программно-аппаратного комплекса PC-3000 Flash. Контроллер, находящийся
во флеш-накопителях, помимо реализации собственно интерфейса, выполняет
специфичные алгоритмы распределения данных по объему микросхем флеш-памяти с
целью контроля равномерности износа отдельных ячеек NAND памяти.
Соответственно, неисправность контроллера приводит к невозможности получения
доступа к данным флеш-накопителя в корректном виде. В подобных случаях
необходимо выпаивать все микросхемы флеш-памяти из накопителя и считывать их
содержимое. Для этих целей в PC-3000 Flash входит специализированное устройство
считывания (PC Flash Reader).
Программная
часть комплекса, взаимодействуя с аппаратной частью, реализует программный
эмулятор контроллера, позволяя получить доступ к данным пользователя,
посредством восстановления специфичного для конечного контроллера алгоритма
трансляции при доступе к содержимому микросхем флеш-памяти. Результатом работы
является восстановление корректного доступа к содержимому флеш-накопителя, к
которому в случае наличия логических разрушений можно применить все инструменты
логического восстановления комплекса Data Extractor UDMA. Комплекс, помимо
значительного списка автоматических режимов восстановления и анализа, содержит
широкие возможности для ручной работы с задачей, при помощи широкого набора
специализированных утилит. Также, в состав комплекса входит база алгоритмов
работы контроллеров, позволяющая ускорить процесс восстановления данных с флеш-диска
посредством прямого указания типа контроллера. Среди автоматических режимов
комплекса, можно выделить режимы "Восстановление по контроллеру",
когда для полного восстановления данных флеш-диска достаточно указать тип
примененного в накопителе контролера. В этом случае, все действия необходимые
для восстановления корректного доступа к пользовательским данным будут
выполнены автоматически, и результатом станет образ диска с пользовательскими
данными. Для автоматизации процесса чтения, комплекс PC-3000 Flash включает
большую базу информации о микросхемах флеш-памяти. В документации к комплексу
раскрыты основные принципы функционирования накопителей на основе NAND
флеш-памяти и даны непосредственные рекомендации по процессу восстановления
данных с них.
Для
изучения новых типов флеш-накопителей в комплексе реализован режим "Сбор
информации", позволяющий собрать информацию о задаче, включая данные о
контроллере и алгоритмах, используемых им, и в сжатом виде передавать
информацию разработчикам. Это позволит изучать новые типы флеш-накопителей,
добавлять их поддержку в комплекс и в некоторых случаях дистанционно помогать
пользователям при восстановлении данных.
Программное
обеспечение этого комплекса позволяет решить следующие задачи:
·
устранить перемешивание данных, вызванное аппаратными
особенностями накопителя (контроллера) и конфигурации платы электроники
·
определить примененный в контроллере алгоритм и его
параметры
·
при необходимости, логически восстановить разрушения
файловой системы.
В
комплексе PC 3000 Flash реализовано значительное число автоматических методов
восстановления и методов, позволяющих выполнить отдельные действия всего
процесса. Среди автоматических режимов комплекса хочется выделить режимы
«Восстановление по контроллеру», когда для полного восстановления данных
достаточно только указать тип примененного в флеш-накопителе контроллера. В
этом случае все действия, необходимые для восстановления корректного доступа к
данным, будут выполнены автоматически, и результатом станет образ диска с восстановленными
данными. Комплекс включает большую базу данных о микросхемах флеш-памяти для
автоматизации процесса считывания. Однако автоматические режимы восстановления
и анализа — это не все, на что способен комплекс. Еще в нем заложены широкие
возможности для индивидуального изучения задачи восстановления при помощи
разнообразного набора специализированных утилит. Также в состав PC-3000 Flash
входит пополняемая база данных контроллеров, позволяющая ускорить процесс
восстановления информации с помощью прямого указания типа контроллера. По статистике,
собранной и обработанной с декабря 2007 года, около 80 процентов данных с
флеш-накопителей NAND удается восстановить в автоматическом режиме, при детальном
«ручном» восстановлении — 90 процентов. От общего объема восстановления
информации на накопителях на основе NAND флеш-памяти 45% приходится на
устранение неисправностей логического характера, соответственно, 55% —
физического.[10]
Программные
средства восстановления данных
Сегодня
в Интернете можно найти множество самых разнообразных программ для
восстановления данных. Отличаются они как по своей функциональности, так и по
качеству работы. Конечно, стопроцентной гарантии восстановления не может дать
ни одна программа, но вернуть потерянные файлы хотя бы частично - порой и это
бывает очень важно.
Программа
BadCopy Pro разработана для автоматического быстрого восстановления
данных в рабочей среде Windows (поддерживаются все версии этой ОС). Утилита
позволяет восстанавливать данные не только с винчестеров, нечитабельных
операционной системой, но и дискет, компакт-дисков и накопителей на основе
Flash-памяти. Предусмотрено восстановление различных типов файлов: графические,
текстовые документы, исполняемых файлов, архивов и т.д. К сожалению, нет
возможности восстанавливать папки целиком. Доступно только восстановление
файлов по отдельности. Имеющийся в программе мастер восстановления данных
позволяет выполнить восстановление (в виде перезаписи данных на жесткий диск)
практически в автоматическом режиме, что позволяет работать с BadCopy Pro даже
новичкам. Но знание английского языка, хотя бы на базовом уровне, при этом
будет далеко не лишним. Бесплатно распространяемая демоверсия BadCopy
показывает свои возможности в работе, но записать восстановленные данные на носитель
можно будет только после регистрации программы.
GetDataBack - программа для
восстановления информации, в результате каких либо действий удаленной с
современных носителей практически любого типа (включая сетевые диски и файлы
дисковых образов), в большинстве случаев восстанавливает данные, в том числе
даже после низкоуровневого форматирования диска. GetDataBack распространяется в
двух различных и продаваемых отдельно версиях: для файловой системы NTFS и для
FAT. Отличительной ее особенностью является очень быстрая работа. Программа
поддерживает имена файлов и каталогов в кодировке Unicode, поэтому проблем с
именами на кириллице, характерными для многих других программ такого типа, в
GetDataBack нет.
R-Studio - одна из наиболее
функциональных утилит. С ее помощью можно восстановить данные с разделов
FAT12/16/32, NTFS, Ext2/3 и UFS1/2; реализована возможность работать на CD,
DVD, флеш- и USB-носителях, локальных или сетевых дисках. Программа может
восстановить информацию, в случаях поврежденных и удаленных полностью разделов,
после форматирования диска; поддерживает восстановление данных с RAID-массивов.
Полезная функция программы - возможность создания образа диска для последующего
восстановления данных. Также в утилит восстанавливает сжатые и зашифрованные
файлы. Несомненным достоинством R-Studio является то, что она хорошо понимает
названия файлов и каталогов на кириллице, в большинстве случаев корректно
сохраняя длинные имена и структуру дерева каталогов.[11]
Глава 3. Методическое пособие по восстановлению
данных с флеш-дисков
Простое восстановление данных при
логическом сбое
Если записи на диск не производилось,
то данные физически остались на своём месте, но потерялись или исказились
сведения об их расположении. Таким образом, требуется определить физическое
расположение этой информации на носителе, и считать её оттуда в правильной
последовательности. Для восстановления данных сначала требуется просканировать
весь носитель. По результатам сканирования, на основе обнаруженных служебных
записей, составляется карта расположения фрагментов восстанавливаемых файлов и
строится дерево каталогов. В карте содержатся сведения о том, какой кластер к
какому файлу относится, размеры, названия и другие атрибуты элементов
сканируемой файловой системы - всё, что удалось узнать на основании остатков
служебной информации. Если полученных в результате сканирования сведений не
достаточно, то используются определённые методы экстраполяции. Затем файлы и
папки, которые требуется восстановить, выбираются в соответствии с составленной
картой и переносятся на другой носитель. Явным лидером по результативности, при
восстановлении данных с наиболее распространенных файловых систем, таких как
FAT32, NTFS, EXT2, EXT3, UFS, является пакет R-Studio. В случаях, когда
файловая система повреждена значительно, целесообразно использование программы
EasyRecovery в режиме RawRecovery. Минус RawRecovery заключается в том, что
результатом восстановления будет набор файлов без имён, рассортированных по
типам. Тем не менее, с помощью этого метода удаётся восстанавливать информацию
в самых тяжелых случаях, когда все остальные методы результата не дали. На
использовании этих продуктов, в виду их эффективности и доступности, и будут
основаны описываемые здесь действия по восстановлению информации. Если
произошла потеря данных на файловых системах, не поддерживаемых R-Studio,
например на Novell, стоит обратить внимание на пакеты QuickRecovery или
StellarPhoenix.
1.Запустите R-Studio с
административными правами. Слева видим перечень подключенных к системе
накопителей с расположенными на них разделами (далее интерфейс выбора
накопителя). Если выделить устройство или раздел, то в правой части интерфейса
отобразятся его состояние и свойства. В нижней части экрана находится область
вывода журнала операций и ошибок, в верхней наблюдаем панель инструментов.
2.После выбора накопителя или
раздела, в левой части интерфейса, запустите операцию сканирования кнопкой
«Scan», с панели управления. Для того, чтобы восстановить удалённые файлы в
R-Studio, запускать сканирование не обязательно. Можно сразу открыть нужный
раздел кнопкой «Open Drive Files» и перейти к выполнению п.5. Кнопки
реализованы в виде иконок, вид которых меняется от версии к версии. Узнать, что
какая иконка означает, можно наведя курсор на кнопку, и дождавшись появления
всплывающей подсказки. Запустить сканирование или открыть раздел можно также из
выпадающего меню, после щелчка правой кнопкой на значке накопителя или раздела.
3. Осуществите
настройку параметров сканирования. В первую очередь, представляет интерес
возможность отключения файловых систем, отсутствующих на Вашем устройстве. Для
этого в выпадающем списке «File Systems», можно снять галочки с некоторых
пунктов. Также, в случае повреждения таблицы разделов (не отображаются
логические диски), можно ограничить область сканирования тем разделом, данные с
которого Вам нужны.
4. Нажмите кнопку «Scan».
Сканирование 1Гб usb flash drive занимает порядка нескольких минут. Скорость
сканирования сильно зависит от конкретной модели и состояния накопителя. После
завершения процесса, под иконкой отсканированного накопителя появится
раскрывающийся список возможных вариантов карт расположения информации. Зелёным
цветом выделены хорошие варианты, желтым – сомнительные, красным – плохие.
Выбираем нужный вариант и делаем на нём двойной щелчёк мышкой, или, выделив,
нажимаем кнопку «Open Drive Files».
5.Ждите, пока завершится процесс
построения дерева каталогов. Корневая файловая система находится в каталоге
«Root». В каталоге Metafiles находится служебная информация файловой системы, в
папках вида $$$Folder***** можно найти файлы, которые не удалось привязать к
корневому каталогу.
Помечая галочками чекбоксы рядом с
объектами файловой системы, выберите файлы и папки, которые хотим восстановить,
затем нажимаем на кнопку «Recover Marked». Если хотите восстановить всю
найденную информацию – щёлкните по иконке «Recover». Иногда, для поиска и
выделения желаемой информации, удобно воспользоваться функциями «Find» и «File
Mask».
7.В появившемся после нажатия кнопок
«Recover Marked» или «Recover» окне выберите путь, куда будет сохраняться
восстановленная информация, и нажимаем «OK». Параметры сохранения можно
оставить как есть. Папка, в которую сохраняется результат, должна находиться на
разделе или носителе отличном от того, который сканировался.
8.Подождите завершения процесса
сохранения, и проверьте результат. Если всё получилось – закрываем R-Studio
Перед закрытием программы убедитесь,
что корректно восстановилось всё, что Вам требуется, или сохраните результат
сканирования. Иначе, если обнаружится, что вам нужно что-то ещё, придётся
сканировать заново. Сохранить результат сканирования можно из интерфейса выбора
накопителя. Чтобы туда снова попасть, нажмите кнопку «Back» на панели
инструментов. Затем в меню, выпадающем при щелчке правой кнопкой мышки на
отсканированном объекте, выберите пункт «Save Scan Information», определите
папку для сохранения и нажмите «Сохранить».
Если в результате проведённых
действий часть данных восстановить не удалось, или восстановленные файлы
содержат некорректную информацию, то в интерфейсе выбора накопителя открываем
другой вариант карты (из «зелёных» или «желтых») и повторяем операции,
описанные в пунктах 5-8. В случае, когда и это не помогло, обращаемся к
RawRecovery
Использование EasyRecovery Pro в
режиме RawRecovery.
После запуска EasyRecovery Pro, слева
выберите пункт «Data Recovery», затем справа «RawRecovery». Из появившегося
списка выбираем нужный накопитель, нажимаем кнопку «next». Наблюдаем за
прогресс-баром, ждём результата. Работая в режиме RawRecovery, EasyRecovery Pro
собирает файлы по частям на основании имеющихся сигнатур. Сигнатура – это
характерный фрагмент, по которому можно понять, что файл относится к
определённому типу. Список имеющихся сигнатур можно увидеть, нажав кнопку «File
Types». Воспользовавшись предложенными инструментами можно добавить свои
сигнатуры. В качестве результата сканирования получаем список файлов, с именами
вида FIL1.RAR, FIL2.RAR и т.п., рассортированных в соответствии с типами по
различным папкам. В выборе объектов для последующего сохранения, могут помочь
функции поиска, отображения в соответствии с фильтром и просмотра содержимого
файла, вызываемые нажатием кнопок «Find», «Filter Options» и «View File»
соответственно. Пометьте чекбоксы рядом с нужными файлами и папками, нажимаем
«next». Затем выбираем папку и сохраняем в неё результат восстановления. После
копирования выбранной информации, есть возможность сохранить результат
сканирования, для дальнейшего использования. Если R-Studio выдаёт ошибки чтения,
виснет EasyRecovery, то это может означать наличие нечитаемых секторов.
Возможно, потеря данных и была вызвана их появлением. Чем их больше, тем
медленнее будет идти сканирование и считывание информации. При большом
количестве бэд-секторов ( >50 ) стоит в R-Studio уменьшить количество
попыток чтения. Чтобы это сделать, выделите жесткий диск в интерфейсе выбора
накопителя, выберите параметр I/O Tries в появившемся в правой части экрана
списке и выставите его в 1.
Ручное восстановление данных в FAT32
Для
исследования внутренней структуры раздела целесообразно использовать утилиту Disk Editor, входящую в
пакет Acronis Disk Director.
Для перехода
в новый режим выберите в меню Object пункт Drive (Устройство). После того как Disk Editor завершит
сканирование, установите переключатель режимов в положение Logical disks и затем выберите в списке логических
дисков тот, с которым вы собираетесь работать. После этого Disk Editor начнет
сканирование диска с целью определения структуры файловой системы и построения
полного дерева папок и файлов. Чтобы получить сведения о FAT и корневом
каталоге, не обязательно дожидаться полного завершения сканирования, можно его
прервать через несколько секунд после начала, нажав клавишу Esc. После получения от вас подтверждения
о прекращении сканирования Disk Editor выведет на
экран содержимое корневого каталога в текстовой форме (рис. 7.16). Если Disk Editor по какой-то
причине не смог самостоятельно обнаружить корневой каталог, попробуйте перейти
к нему по относительному адресу его первого сектора. Номер этого сектора можно
определить по значению поля First cluster of Root блока BPB. Кроме того,
при поиске корневого каталога необходимо учитывать следующее. Корневой каталог
(как и любой другой каталог в FAT32) содержит
32-байтовые элементы — дескрипторы, описывающие файлы и вложенные каталоги. Первый
дескриптор корневого каталога содержит сведения о логическом диске (точнее
говоря, о самом корневом каталоге), в том числе: метку тома, дату и время
создания, атрибуты каталога как элемента файловой системы. Остальные
дескрипторы, хранящиеся в корневом каталоге, содержат большее количество
сведений о связанных с ними элементах данных.
Описание лишь
наиболее важных полей дескриптора, которые представлены на первом экране:
·
Name — имя элемента данных (файла или
папки); если элемент данных отмечен как удаленный, то в качестве первого
символа имени используется байт Е5 (в текстовом формате Disk Editor заменяет его
буквой х);
·
Ext — расширение файла (для папок это
поле пусто);
·
ID — тип элемента данных; возможные
значения:
§
Vol — том;
§
Dir — каталог;
§
LFN — аббревиатура от Long File Name, длинное имя
файла (об LFN см. главу 3,
раздел «Выбор имен папок и файлов»);
§
File — файл;
§
Erased — удален (указывается только для
файлов);
§
Del LFN — удаленное длинное имя (признак
устанавливается после переименования файла или папки);
·
Size — размер (в
байтах);
·
Date — дата создания или изменения;
·
Time — время создания или изменения;
·
Cluster — номер
первого кластера;
·
A, R, S, Н, D, V — атрибуты элемента данных (архивный,
только чтение, системный, скрытый, каталог, том); значения всех атрибутов
хранятся в одном байте дескриптора.
Чтобы
просмотреть содержимое какого-либо вложенного каталога, переместите курсор в
соответствующую строку и нажмите клавишу Enter.
Если сведения
о корневом (или вложенном) каталоге, представленные Disk Editor, кажутся вам
«подозрительными», можно попробовать интерпретировать записанные в нем данные
самостоятельно, переключившись в режим просмотра шестнадцатеричного кода. Для
этого в меню View выберите пункт as
Hex. Формат дескриптора каталога
представлен в табл. 1
Анализируя
полученную информацию, вы можете обнаружить подозрительные изменения в полях
размера файла, даты и времени. При необходимости их можно исправить «вручную».
Таб. 1 Формат
дескриптора каталога [13]
Кроме того,
для каждого файла в столбце Cluster отображается номер распределенного
ему первого кластера. Следует просмотреть весь каталог до конца: необходимо
проверить, что в каталоге отсутствуют посторонние данные. Они могут быть
записаны туда вирусом. Если перейти в режим неформатированного просмотра, можно
убедиться, что свободные элементы каталога содержат нулевые значения. Если же
после свободных элементов находятся какие-либо данные, существует очень большая
вероятность того, что они записаны туда вирусом или системой защиты программ от
несанкционированного копирования (если исследуемый каталог содержит такие
программы). В том случае, когда каталог поврежден полностью или частично,
ссылки на описанные в нем файлы будут потеряны. Если вы найдете тем или иным
способом секторы, содержащие нужный вам файл с разрушенным дескриптором, то,
пользуясь описанной ниже методикой, сможете восстановить дескриптор и получить
доступ к файлу.
Процедура
основана на использовании функций Disk Editor по поиску
различных элементов файловой системы FAT. Например,
чтобы найти потерянные каталоги (такие, на которые нет ссылок из других
каталогов, в том числе из корневого), требуется выполнить следующее.
1. В меню Tools выберите команду Find Object (Найти объект), а в дополнительном
меню выберите вариант Subdirectory (Подкаталог).
2. Программа Disk Editor
просматривает секторы диска в поисках такого, в начале которого находится
последовательность байтов 2Е
20 20 20 20 20 20 20 20 20 20. Эта последовательность соответствует
дескриптору, содержащему ссылку каталога на себя самого.
3. Нажимая
комбинацию клавиш Ctrl+G, вы можете продолжить поиск нужного
каталога, пока не найдете тот, который содержит интересующие вас файлы.
4. Как только
нужный каталог найден, необходимо записать физический адрес сектора диска,
содержащего каталог, а затем найти либо вычислить номер кластера,
соответствующего каталогу.
Для поиска
номера кластера, в котором располагается найденный каталог, перейдите в режим
текстового просмотра каталога, выбрав в меню View пункт as Directory. Затем в
меню Link выберите команду Cluster chain (fat) (Цепочка
кластеров (fat)). На экране
появится содержимое таблицы FAT в текстовом
режиме просмотра, при этом искомый номер кластера будет выделен. Зная номер
кластера потерянного каталога, можно создать новый дескриптор каталога,
например, в корневом каталоге диска, и сделать в этом дескрипторе ссылку на найденный
каталог. После этого потерянный каталог вновь станет доступным.
Восстановление данных в файловой системе
NTFS
Файловая
система NTFS содержит
целый ряд механизмов, призванных повысить надежность хранения данных. Это, в
свою очередь, ведет к существенному усложнению структуры NTFS по сравнению
с FAT32. Даже детальное изучение структуры
записей, хранящихся в MFT (главной
таблице файлов), не гарантирует возможность восстановления данных «вручную».
Ситуация усугубляется тем, что на сегодняшний день практически отсутствуют
инструменты, обеспечивающие удобные средства просмотра и редактирования MFT.
По указанной
причине мы ограничим круг рассматриваемых вопросов следующими ситуациями:
·
восстановление элемента таблицы разделов, содержащего
сведения об NTFS-разделе;
·
восстановление служебной информации в MFT.
Перечисленные
задачи можно решить посредством совместного использования таких инструментов,
как Norton Disk Editor и Paragon Partition Manager, а также
утилиты Partition Table Editor, входящей в
состав пакета Norton PartitionMagic.
Восстановление элемента таблицы разделов
Строки
расположенной ниже таблицы соответствуют четырем элементам основной таблицы
разделов. В столбцах выводятся следующие сведения:
·
Туре (Тип) — тип
файловой системы или раздела; отображается в виде шестнадцатеричного кода;
·
Boot (Загрузка) — признак загрузочного
раздела; для загрузочного активного раздела, как вы знаете, должно быть указано
значение 80;
Starting (Начальное положение) — адрес первого
сектора раздела, заданный номером цилиндра (Cyl), головки (Head) и сектора (Sector);
Ending (Конечное положение) — адрес
последнего сектора раздела, также заданный номером цилиндра, головки и сектора;
Sectors Before (Предшествует секторов) — количество
секторов жесткого диска, предшествующих первому сектору раздела в соответствии
с адресацией LBA (то есть при «сквозной» нумерации по
головкам и цилиндрам);
Sectors (Секторов) — размер раздела,
измеренный в секторах.
Рис. 19. Стартовое окно утилиты Partition Table Editor
Чтобы
просмотреть цепочку дополнительных таблиц расширенного раздела (EPBR), выполните
следующие действия.
1. Переместите
курсор в строку, соответствующую расширенному разделу (его код равен OFh).
2. Щелкните на
кнопке Goto EPBR (Перейти на EPBR),
расположенной под таблицей.
Если вы
знаете, что восстанавливаемый NTFS-раздел
находится на прежнем месте, но в соответствующей ему строке указан неверный тип
раздела, вы можете попробовать установить корректное значение принудительно.
Для этого щелкните на кнопке Set Туре (установить тип) и в открывшемся окне
выберите требуемое значение (рис. 7.19). Для раздела NTFS оно равно 07h. Если вам
известны корректные значения других параметров раздела и они отличаются от
представленных в таблице, вы можете (предварительно запомнив или записав на
бумаге текущие значения) ввести их в поля таблицы. Чтобы внесенные изменения
были записаны на диск, щелкните на кнопке Save Change (Сохранить изменения)
Рис. 20.Список
типов раздела
Если восстанавливаемый раздел опознается как пустой,
можно попробовать создать на его месте новый, такого же типа, как у
восстанавливаемого раздела, и обязательно точно такого же размера. Для
выполнения этой процедуры можно использовать либо Paragon Partition Manager, либо Norton PartitionMagic.
Восстановление служебной информации в MFT
Таблица MFT представляет
собой метафайл с именем $MFT, в котором хранятся записи с
атрибутами других метафайлов и записи с атрибутами файлов пользователя. Для
разделов объемом в несколько гигабайт и при большом количестве файлов данных
размеры MFT могут
достигать десятков мегабайт. При этом граница MFT может
изменяться динамически в зависимости от объема записанных на диск данных и
наличия свободного пространства. Кроме того, каждый файл в NTFS может иметь
собственный набор атрибутов, некоторые из них задаются самим пользователем.
Все это
существенно затрудняет анализ и восстановление MFT на уровне
отдельных записей. Тем не менее, в случае повреждения MFT вы можете
попытаться восстановить записи, относящиеся к метафайлам, а затем поручить
восстановление файлов и папок одному из программных инструментов, рассмотренных
раннее.
Поиск таблицы MFT
Номер первого
кластера таблицы MFT содержится в
поле Clusters to MFT загрузочного сектора. Если вам
удалось его восстановить, то с помощью утилиты Просмотр секторов можно перейти
на этот кластер и проверить корректность записей, относящихся к метафайлам.
Для перехода
по номеру кластера выполните следующие действия.
1. Откройте
первый (загрузочный) сектор диска.
2. В разделе Абсолютный сектор, в поле Наберите выражение для оценки введите формулу для вычисления номера
первого сектора MFT: <N кластера>*<Sectors per Cluster>, где <N кластера> — это шестнадцатеричное значение
номера первого кластера MFT, a <Sectors per Cluster> — это размер кластера, записанный в
поле Sectors per Cluster (например: 40000х 8, рис. 21)
3.Нажмите
клавишу Enter. Характерные признаки «исправной» MFT:
·
каждая запись начинается со слова FILE0, размещенного в первых пяти байтах
сектора;
·
для большинства записей метафайлов в байтах со смещением F2h хранится имя
метафайла, которое всегда начинается с символа $;
·
первая запись описывает сам метафайл $MFT.
Рис. 21. Поиск
первого сектора MFT с помощью утилиты Просмотр секторов
Последовательность
размещения записей других метафайлов приведена в таб. 2.
Таблица 2. Последовательность
размещения записей метафайлов в файле $MFT[13]
Далее в файле
$MFT следуют записи с информацией обо всех
остальных файлах и каталогах.
В том случае,
если поле Clusters to MFT загрузочного сектора повреждено или
переход по номеру кластера привел «неизвестно куда», можно попробовать доверить
поиск MFT самой утилите Просмотр секторов.
Для этого
щелкните на кнопке Перейти
и в открывшемся меню (рис. 22) выберите
команду NTFS ►
MFT. Обратите внимание, что здесь же
указан номер сектора (относительно начала раздела), с которого начинается MFT.
Рис. 22. Поиск таблицы MFT
с помощью утилиты Просмотр секторов
Если и этот
прием не даст результата, остается последний выход: вернуться к работе с
программой Norton Disk Editor и попытаться
найти таблицу MFT с помощью
полнотекстового поиска по разделу. В качестве ключа поиска можно использовать
имя метафайла — $MFT. Однако при этом следует учитывать,
что имена файлов в NTFS представлены
в двухбайтовой кодировке UNICODE, a Norton Disk Editor работает с
однобайтовым кодом ASCII. Если
основная таблица MFT повреждена,
следует проверить состояние ее копии. Напомним, что в NTFS не
предусмотрено создание полной копии MFT. Сокращенная
копия, MFT Mirror, содержит
лишь первые четыре записи из основной таблицы, относящиеся к метафайлам $MFT, $MFTMirr, $LogFile и $Volume. Напомним также, что копия MFT в версии NTFS для Windows ХР всегда
расположена в середине раздела. Поэтому если в загрузочной записи адрес ее
начала отсутствует, несложно его вычислить исходя из числа секторов раздела. Можно
также попробовать перейти к сектору с копией MFT с помощью
утилиты Просмотр секторов, воспользовавшись командой NTFS ►
MFT зеркальный из меню Перейти.
Если копия
уцелела, необходимо отыскать ее последний сектор и затем перенести содержимое
«зеркала» в соответствующие секторы, отведенные под основную MFT.
С помощью
утилиты Просмотр секторов эта операция выполняется таким же образом, как и
перенос копии загрузочного сектора.
Размер и структура записи таблицы MFT
С учетом
сказанного выше большое значение имеет правильное определение размера записи
таблицы MFT. Его
значение хранится в поле Clusters per FRS загрузочного сектора. Многие дисковые
утилиты, в том числе PTEdit, отображают
это значение как десятичное целое положительное число в диапазоне 0-255 (обычно
равное 246, см. рис. 7.20). В действительности это значение следует
рассматривать как шестнадцатеричное целое со знаком, в котором старший разряд
отводится для представления знака. Если число положительно (то есть в
десятичном представлении меньше 128), то оно означает
количество кластеров, занимаемых одной записью таблицы MFT. Если же
число отрицательное (больше десятичного 127), то для определения размера записи
MFT нужно использовать следующую
формулу:
FRS = 2(256-Clusters-Per-FRS)(1)
Здесь FRS — количество байтов, занимаемых
записью MFT, a Clusters_Per_FRS — значение поля Clusters per FRS.
Например,
если в поле Clusters per FRS представлено значение 246 (то есть
шестнадцатеричное F6), то в
приведенной выше формуле показатель степени 2 будет равен 10, а для FRS получим значение 1024, то есть размер записи MFT составляет 1
Кбайт. Аналогично значение поля Clusters per FRS, равное 245 (F5h),
соответствует размеру записи MFT, равному 211
= 2048 байт, или 2 Кбайт.
Запись MFT содержит
список областей переменной длины, каждая из которых соответствует одному из
атрибутов файла. Размер этого списка и состав хранящихся в нем атрибутов для
каждого файла может быть своим. Если все атрибуты файла или каталога не
помещаются в базовой записи, создается одна или несколько дополнительных
записей. При этом базовая запись содержит атрибут, в котором перечислены все
атрибуты данного файла и каталога, а также указание, в каких именно записях
(базовой или дополнительных) хранятся те или иные атрибуты. Каждая запись MFT состоит из
заголовка фиксированного формата, вслед за которым идет список атрибутов
переменной длины. Приступая к исследованию записи MFT, сначала
нужно проанализировать ее заголовок. Формат заголовка записи MFT представлен
в табл. 3.
Таблица 3. Формат
заголовка записи MFT[13]
Заключение
Цели, поставленные в
дипломном проекте, выполнены. Была рассмотрена история создания флеш-памяти, её
применение, проблемы, приводящие к затруднению или прекращению доступа к
хранящимся на ней данных. Была дана классификация различных типов повреждений,
приводящих к недоступности данных, и средства борьбы с ними. В заключительной
части диплома было рассмотрено использование утилит R-Strudio и EasyRecovery
для восстановления информации в автоматическом режиме, и использование дисковых
редакторов Disk Editor из пакета Acronis Disk Director, Norton Disk Editor и
Paragon Partition Manager, а также утилита Partition Table Editior, входящией в
состав пакета Norton PartitionMagic.
Составлены инструкции для
редактирования с помощью этих утилит служебных разделов файловых система FAT32
и NTFS, рассмотрены атрибуты файлов, дескрипторы каталогов, метафайлы, элементы
таблицы разделов и способы её восстановления. С помощью составленного пособия
возможно самостоятельное восстановление логических повреждений в памяти
флеш-накопителя без обращения в специализированные центры и использования
простых программ, ориентированных на использование с жесткими дисками и не
всегда корректно работающих с флеш-памятью.
Список
использованной литературы
1. Докучаев Д. Всемогущий Flash//
Xakep-спецвыпуск.-2003.-№34 URL: http://www.xakep.ru/magazine/xs/034/044/1.asp
2. Сазонов C. Секреты флеш-диска// Hard
‘n’ Soft.-1999.-№9.
3. Наконечный А. Энциклопедия
флеш-памяти// URL: http://www.ak-cent.ru/?parent_id=9841
4. Митилино C. Магические кристаллы или
недвижимое в подвижном //ITC-Online.-2003.-№27 URL:http://itc.ua/node/14109
5. Олейник Т. Твёрдая память для
карманных устройств //Домашний ПК.-2003.-№10.
6. Акнорский Д. Немного о флэш-памяти
//Компьютер Price.-2003.-№48.
7. Стаханов C. Восстановление данных с
флеш носителей //Центр восстановления данных Стаханов
URL:http://www.stahanov-rdc.ru/povrejdenie-flash.html
8. Зайдель И. Флэшка должна жить
долго//R.LAB URL:http://rlab.ru/doc/long_live_flash.html
9. Программное обеспечение комплекса
PC-3000 Flash//ACE Lab URL:http://www.acelab.ru/dep.pc/pc3000.flash.php
10.
Восстановления
данных с накопителей на основе NAND флэш-памяти //iXBT
URL:http://www.ixbt.com/storage/faq-flash-p0.shtml
11.
Утилиты для
восстановления данных//Центр Восстановления данных АСЕ
URL:http://www.datarec.ru/articles/article_10.php
12.
Технологии
флэш-памяти// iXBT URL:http://www.ixbt.com/storage/flash-tech.shtml
13.
Гультяев А.К.
Восстановление данных. 2-е изд. — СПб.: Питер, 2006. — 379 с.: