Сделай Сам Свою Работу на 5

Основные и дополнительные разделы FAT





Оглавление

1 Реализация. 4

1.1 Структуры диска FAT. 4

1.2 Основные и дополнительные разделы FAT. 6

1.3 Цилиндр для диагностических операций чтения и записи. 9

1.4 FAT 32. 10

1.5 Размер кластера FAT 32. 11

1.6 Неверный файл или каталог. 11

1.7 Ошибки FAT. 11

 

 


 

Введение

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

Постановка задачи

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

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



 

Глава 1 Реализация

 

Структуры диска FAT

 

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

Большинство существующих на сегодняшний день файловых систем построены на основе таблицы размещения файлов (File Allocation Table — FAT), которая содержит дорожки данных в каждом кластере на диске. Существует несколько типов файловой системы FAT — FAT 12, FAT 16 и FAT 32. Они отличаются количеством цифр, используемых в таблице размещения файлов. Другими словами, в FAT 32 используется 32-разрядное число для хранения дорожки данных в каждом кластере, в FAT 16 — 16-разрядное число и т.д. В настоящее время существуют следующие типы файловой системы FAT:



■ FAT 12, используемая в разделах емкостью не более 16 Мбайт (например, дискета);

■ FAT 16, используемая в разделах емкостью от 16 Мбайт до 2 Гбайт;

■ FAT 32, используемая (необязательно) в разделах емкостью от 512 Мбайт до 2 Тбайт.

Файловые системы FAT 12 и FAT 16 изначально применяются в DOS и Windows и поддерживаются практически всеми известными на сегодняшний день операционными системами. Большинство персональных компьютеров поставляется с жесткими дисками, на которых установлена одна из файловых систем FAT. Файловая система FAT 32 поддерживается операционной системой Windows 95B и более поздними версиями, а также Windows 2000, которая также поддерживает файловую систему NTFS. Некоторые операционные системы имеют собственную файловую систему. Например, Windows NT и Windows 2000 поддерживают файловую систему NT File System (NTFS); OS/2 поставляется с собственной файловой системой High Performance File System (HPFS).

В этой главе речь идет о файловой системе FAT, а также рассматриваются возможности новой системы FAT 32 и NTFS.

Для обеспечения пользовательским приложениям доступа к файлам независимо от типа используемого диска в операционной системе предусмотрено несколько структур. Эти структуры поддерживаются системами Windows 9x, Windows NT и Windows 2000 и представлены ниже в порядке расположения на диске:

■ загрузочные секторы главного и дополнительного разделов;

■ загрузочный сектор логического диска;

■ таблицы размещения файлов (FAT);

■ корневой каталог;

■ область данных;

■ цилиндр для выполнения диагностических операций чтения/записи.

В отличие от жесткого диска, на дискетах нет загрузочных секторов главного и дополнительного разделов и диагностического цилиндра. Эти структуры создаются программой Fdisk, которая не применяется для дискет, так как они не могут быть разбиты на разделы. На рис. 26.1 представлено взаимоотношение этих структур на диске Western Digital Caviar AC 12100 размером 2 111 Мбайт. Каждая дисковая область применяется для конкретной цели. Повреждение одной из перечисленных областей обычно приводит к ограничению доступа к другим областям, вызывая сбои в работе. Например, операционная система не сможет получить доступ к диску, если повреждена главная загрузочная запись. Таким образом, понимание логики работы каждой структуры и их взаимодействия оказывает значительную помощь в устранении неполадок.



Загрузочный сектор главного раздела

Впервые поддержка жестких дисков была реализована в DOS 2.0, выпущенной в 1983 году. В этой операционной системе впервые использовалась 16-разрядная файловая система FAT и поддерживалось деление диска на разделы, т.е. создание на диске логических томов. Выполнять разделение диска необходимо даже в том случае, если вы собираетесь использовать только один раздел.

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

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

Однако, разделив диск, можно установить несколько операционных систем — по одной в каждый раздел, и эти системы смогут нормально сосуществовать на одном диске.

Такая мультизагрузка становится все более популярной в настоящее время.

Чтобы установить на один жесткий диск несколько операционных систем, его надо разбить на разделы. Например, вы можете с помощью программы Fdisk создать на диске один или несколько разделов для установки на них DOS или Windows 9x, а оставшуюся часть диска предоставить для другой операционной системы. Каждый раздел в операционной системе будет иметь вид отдельного диска.

Информация о каждом разделе сохраняется в загрузочном секторе раздела (или логического диска) в начале каждого раздела.

Существует также основная таблица списка разделов, помещенная в загрузочный сектор главного раздела.

Загрузочный сектор главного раздела (или главная загрузочная запись (Master Boot Record— MBR)) является первым сектором на жестком диске (цилиндр 0, головка 0, сектор 1) и состоит из двух элементов.

■ Таблица главного раздела. Содержит список разделов на диске и расположение загрузочных секторов соответствующих логических дисков. Эта таблица очень маленькая и может содержать максимум четыре записи. Таким образом, для получения большего количества разделов в операционной системе (например, DOS) можно создать один дополнительный раздел и поместить в него несколько логических дисков.

■ Главный загрузочный код. Небольшая программа, которая выполняется системной BIOS. Основная функция этого кода — передача управления в раздел, который обозначен как активный (или загрузочный).

Основные и дополнительные разделы FAT

 

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

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

Такое ограничение DOS связано с тем, что в латинском алфавите от C до Z всего 24 буквы.

В начале каждого раздела DOS содержится загрузочный сектор логического диска.

Разбивая диск на разделы, необходимо создать активный (или загрузочный) раздел.

Программа, содержащаяся в самом первом секторе на жестком диске, определяет, какой раздел активен, и передает управление его загрузочному сектору. Вы также можете создать дополнительный раздел диска для Novell NetWare, NTFS (Windows NT), HPFS (OS/2), AIX (UNIX), XENIX или другой файловой системы, используя системный диск с соответствующей программой разделения диска.

Разделы, используемые этими операционными системами, недоступны при работе в DOS. Все дело в различиях между файловыми структурами. DOS использует структуру FAT, которая также поддерживается OS/2, Windows NT и некоторыми другими операционными системами.

В то же время в OS/2 обычно вместо FAT применяется файловая система HPFS (High Performance File System), a Windows NT пользуется собственной файловой системой NTFS (NT File System) и т.д.

В табл. 1 приведен формат таблицы разделов, которая хранится в секторе главной загрузочной записи.

 

Загрузочный сектор — это первый сектор на любом логическом диске DOS. Например, на дискете или на диске Zip это самый первый физический сектор, так как дискету нельзя разбить на разделы и она имеет только один логический диск. На жестком диске загрузочный сектор (секторы) располагается в начале каждого раздела, не являющегося дополнительным, или в начале любой области диска, распознаваемой как логический диск DOS.

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

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

■ Загрузочный код — программа, которая начинает процесс загрузки операционной системы. Для DOS и Windows 9x/Me это файл Io . sys.

Загрузочный сектор дискеты загружается ROM BIOS, а при загрузке системы с жесткого диска MBR передает управление загрузочному сектору активного раздела. В обоих случаях загрузочный сектор логического диска получает управление. Он выполняет некоторые проверки и затем пытается прочитать с диска первый системный файл (в DOS/Windows это файл Io . sys). Загрузочный сектор не виден, так как находится вне области хранения файлов логического диска.

Загрузочный сектор логического диска создается программой DOS и Windows 9x Format. На жестком диске загрузочные секторы есть в начале каждого логического диска как в основном, так и в дополнительном разделах. Все загрузочные секторы наряду с данными о логическом диске содержат специальную запись, однако при загрузке выполняется код только того сектора, который находится в активном разделе. Остальные секторы просто считываются операционной системой для определения параметров логических дисков.

Загрузочный сектор логического диска состоит из программы (выполняемого кода) и области данных. Эта информация необходима операционной системе для определения размера логического диска и размещения таких структур, как FAT. Формат блока параметров диска весьма специфичен. Ошибки в этом блоке могут привести к проблемам при загрузке DOS или к отсутствию доступа к диску.

 

Корневой каталог

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

■Имя файла и расширение — восемь символов имени и три символа расширения; точка между именем и расширением файла подразумевается, но не включается в эту запись.

■ Байт атрибутов файла, содержащий флаг, который представляет стандартные атрибуты файла.

■ Время и дата создания файла или его модификации.

■ Размер файла в байтах.

■ Ссылка на начальный кластер — номер кластера, с которого начинается файл.

Информация о расположении файла, т.е. расположении оставшихся кластеров, содержится в FAT.

Существует два основных типа каталогов: корневой каталог и подкаталог. Различаются они максимальным количеством хранящихся файлов. На каждом логическом диске в фиксированном месте, сразу же за копиями FAT, располагается корневой каталог. Размеры корневых каталогов варьируются в зависимости от размера диска, но каждый конкретный корневой каталог имеет фиксированное максимальное число файлов. Длина корневого каталога фиксируется при создании логического диска и не может быть изменена в процессе работы. Размер корневого каталога различных накопителей приведен в табл. 5. В отличие от корневого каталога, подкаталог может хранить произвольное количество файлов и расширяться по мере необходимости.

 

Все каталоги имеют одинаковую структуру. Записи в этой базе данных сохраняют важную информацию о файлах, которая связана с информацией, хранящейся в FAT, посредством одного из полей записи — номера первого занимаемого файлом кластера на диске. Если бы все файлы на диске не превышали размеров одного кластера, потребности в FAT вообще бы не возникло. В FAT содержится информация о файле, отсутствующая в каталоге, — номера кластеров, в которых расположен весь файл.

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

Смещение

Слово соответствует двум байтам в обратном порядке, двойное слово — двум словам в обратном порядке.

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

 

Таблица размещения файлов

Таблица размещения файлов (FAT) содержит номера кластеров, в которых расположены файлы на диске. Каждому кластеру в FAT соответствует одно число. Секторы, не содержащие пользовательских данных (файлов), не отражены в FAT. К таким секторам относятся загрузочные секторы, таблицы размещения файлов и секторы корневого каталога.

В файловой системе FAT дисковое пространство разбивается не на секторы, а на группы секторов, которые называются кластерами (ячейками размещения). Кластер содержит один или несколько секторов. Размер кластера определяется при делении диска на разделы с помощью программы Fdisk и зависит от размера создаваемого раздела. Наименьший размер диска, который может занимать файл ненулевого размера, — один кластер. Каждый файл использует целое число кластеров. Например, если файл занимает на один байт больше размера кластера, то для его размещения на диске будет выделено два кластера.

FAT — это электронная таблица, управляющая распределением дискового пространства. Каждая ячейка этой таблицы связана с определенным кластером на диске. Число, содержащееся в этой ячейке, сообщает о том, использован ли данный кластер под какой-либо файл и, если использован, где находится следующий кластер этого файла.

Каждая ячейка FAT хранит шестнадцатеричное значение длиной 12 или 16 бит. Шестнадцатиразрядные FAT более удобны в работе, так как значительно легче редактировать поля размером в два байта, чем в полтора. Чтобы самостоятельно отредактировать FAT, вы должны выполнить некоторые математические преобразования для получения номера кластера. К счастью, многие программы позволяют отредактировать FAT автоматически. В большинстве этих программ номера кластеров представлены в десятичном виде, наиболее удобном для пользователей. В FAT кластеры с ненулевыми значениями используются, а специальное значение указывает дальнейшее расположение файла. В рассматриваемом примере в кластере 1000 указывается кластер 1001, в 1001 — 1002, в 1002— 1003, а в 1003 записано значение FFFFh, т.е. на этом кластере файл заканчивается. Рассмотрим пример с фрагментированным файлом. Пусть файл Usconst. txt записан, начиная с кластера номер 1000. А файл Pledge . txt начинается с кластера 1002. Таким образом, файл Usconst. txt становится фрагментированным. Первые две записи FAT зарезервированы и содержат информацию о самой FAT, все остальные указывают на соответствующие кластеры диска. Большинство записей FAT состоит из ссылок на кластеры, в которых содержатся части определенного файла, а некоторые содержат специальные шестнадцатеричные значения:

■ 0000h — кластер не используется;

■ FFF7h — как минимум один сектор в кластере поврежден и не может быть использован для хранения данных;

■ FFF8h—FFFFh — кластер содержит конец файла.

Тип используемых FAT определяется программой Fdisk, хотя записываются они в процессе форматирования высокого уровня программой Format. На всех дискетах применяется 12-разрядная FAT, а на жестком диске может использоваться как 12-, так и 16-разрядная FAT, в зависимости от размера логического диска. На дисках размером меньше 16 Мбайт (32 768 секторов) применяется 12-разрядная FAT, на дисках большего размера— 16-разрядная, а на дисках размером более 512 Мбайт при использовании Windows 95 OSR2 и Windows 98 — 32-разрядная FAT.

Программа Fdisk обычно создает на одном диске две копии FAT. Каждая копия занимает несколько последовательных секторов на диске, и вторая копия записывается непосредственно после первой. К сожалению, операционная система использует вторую копию FAT только в том случае, когда невозможно прочитать секторы, содержащие первую копию. Таким образом, если первая копия FAT пропадет (весьма распространенная ситуация), операционная система не будет использовать вторую копию. Даже команда Chkdsk не проверяет вторую копию FAT. Кроме того, каждый раз, когда операционная система обновляет первую копию FAT, большие участки первой копии автоматически копируются во вторую. Если же первая копия повреждена, то и вторая окажется поврежденной: после обновления FAT вторая копия отражает все изменения в первой копии, включая и ошибки. Обе копии FAT редко отличаются одна от другой, по крайней мере в течение продолжительного срока: при обновлении первая копия FAT автоматически копируется во вторую.

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

Область данных

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

 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.