Содержание

Слайд 2

FAT

Файловая система FAT (File Allocation Table) создавалась в конце 1970 - начале

FAT Файловая система FAT (File Allocation Table) создавалась в конце 1970 -
1980 годов, и поддерживалась ОС Microsoft MS-DOS.
Изначально она была создана для гибких дисков размером меньше чем 500K, но со временем развивалась для поддержки дисков больших размеров.
Сейчас существуют три типа FAT: FAT12, FAT16 и FAT32.
Основные различия в типах FAT отражены в их названии - это размер (в битах) значений таблицы FAT. 12 бит в FAT12, 16 бит в FAT16, и 32 бит в FAT32.

Слайд 3

FAT

Файловая система FAT поддерживает два типа файлов: обычный файл и каталог.
Файловая

FAT Файловая система FAT поддерживает два типа файлов: обычный файл и каталог.
система распределяет память только из области данных, используя в качестве минимальной единицы дискового пространства кластер.
Кластер (единица выделения дискового пространства - allocation unit - это минимальный объем диска, который может быть выделен файлу.
Кластер - это логический блок диска (сектор - физический блок диска).
Файл, независимо от размера, всегда занимает целое число кластеров.
Кластер состоит из смежных (последовательных) секторов диска.

Слайд 4

Логическая организация FAT

Логический раздел, отформатированный под файловую систему FAT, состоит из системной

Логическая организация FAT Логический раздел, отформатированный под файловую систему FAT, состоит из
области и области файлов.
Каждая часть логического диска занимает целое число логических секторов.
Секторы области файлов объединены в кластеры, размер кластера 1, 2, 4, 8, 16, 32 или 64 сектора по 512 байт.
Номер первого кластера равен 2 (т.к., как первые две ячейки FAT зарезервированы (содержат байт-описатель).

Слайд 5

Логическая организация FAT 12/16

Логическая организация FAT 12/16

Слайд 6

0-й сектор

Сектор 0 содержит таблицу параметров диска (BPB) и начальный загрузчик ОС.

0-й сектор Сектор 0 содержит таблицу параметров диска (BPB) и начальный загрузчик

Вид загрузчика зависит от типа ОС.

Слайд 7

0-й сектор

Первые 3 байта сектора 0 содержат команду перехода JMP на начало

0-й сектор Первые 3 байта сектора 0 содержат команду перехода JMP на
загрузчика.
 Далее расположено поле из 8 бит, в которое при форматировании заносится идентификатор версии ОС.
Далее располагается таблица BPB (BIOS parameter block), описывающая физические характеристики диска и позволяющая вычислить правильный физический адрес на диске по данному номеру логического сектора.
За таблицей располагаются дополнительные данные.
За сектором 0 могут быть расположены дополнительные зарезервированные (для загрузчика) секторы. Общее число зарезервированных секторов, включая сектор 0, указывается в BPB.

Слайд 9

Дополнительные данные

Дополнительные данные

Слайд 10

Начальный загрузчик

С адреса 03Eh расположен начальный загрузчик.
Последние два байта сектора 0 содержат

Начальный загрузчик С адреса 03Eh расположен начальный загрузчик. Последние два байта сектора
признак загрузочной записи - байт 55h по адресу 1FEh и байт AAh по адресу 1FFh.

Слайд 11

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

За зарезервированными секторами (или непосредственно за сектором 0) располагается таблица

Таблица размещения файлов За зарезервированными секторами (или непосредственно за сектором 0) располагается
размещения файлов FAT-1, после которой могут располагаться дополнительные копии FAT.
Обычно используется 2 копии. Число копий указано в BPB.
FAТ содержит информацию о размещении файлов и каталогов на диске.

Слайд 12

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

В конце системной области расположен корневой каталог, который имеет фиксированный размер.

Корневой каталог В конце системной области расположен корневой каталог, который имеет фиксированный

Размер корневого каталога в каталожных записях указан в таблице BPB.
Для FAT 12 размер корневого каталога равен 14 секторам (7 Кбайт), что позволяет хранить 224 записей о файлах и каталогах, так как каждая запись каталога состоит из 32 байт.

Слайд 13

Область файлов

Область файлов предназначена для размещения всех файлов и всех каталогов, кроме

Область файлов Область файлов предназначена для размещения всех файлов и всех каталогов, кроме корневого каталога.
корневого каталога.

Слайд 14

Логическая организация FAT32

Система FAT32 предназначена для дисков большого объема (более 2 Гбайт).

Логическая организация FAT32 Система FAT32 предназначена для дисков большого объема (более 2

В системе FAT16 диск большого объема имеет кластеры максимального размера, что приводит к потере до 30-50% дискового пространства в остатках кластеров.
В FAT32 размер кластера может быть небольшим (4 Кбайт для диска 16 Гбайт), но число кластеров при этом значительно возрастает.
Так как таблица FAT имеет слишком большой размер (16 Мбайт для диска 16 Гбайт), в FAT32 используются дополнительные структуры для ускорения работы.

Слайд 15

Логическая организация FAT32

Логическая организация FAT32

Слайд 16

Логическая организация FAT32

FAT32 имеет расширенный загрузчик.
Сектор 1 содержит структуру FSInfo, предназначенную

Логическая организация FAT32 FAT32 имеет расширенный загрузчик. Сектор 1 содержит структуру FSInfo,
для управления FAT.
Загрузочный сектор, структура FSInfo и загрузчик дублируются в зарезервированных секторах.
Корневой каталог не имеет фиксированного положения и размера, как в FAT16. Вместо этого он является файлом специального вида, как и все другие каталоги.
На практике корневой каталог обычно начинается с первого кластера области файлов (кластер 2).

Слайд 17

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

FAT32 использует индексные указатели размером 32 бита
Старшие 4 бита не

Таблица размещения файлов FAT32 использует индексные указатели размером 32 бита Старшие 4
используются и всегда равны нулю.
Первые две ячейки таблицы FAT в системе FAT32 используются следующим образом:
ячейка 0 содержит байт-описатель носителя, дополненный слева двоичными единицами;
ячейка 1 содержит код признака конца цепочки кластеров файла (обычно 0FFFFFFFh).  
Бит 27 ячейки 1 является признаком завершения работы с диском: 1 - работа завершена нормальным образом, 0 - нет.
Бит 26 ячейки 1 является аналогичным признаком нормального завершения операции ввода-вывода.

Слайд 19

Дополнительная информация

Дополнительная информация

Слайд 20

FSInfo

Структура FSInfo предназначена для ускорения выполнения операций с FAT. В ней содержится

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

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

Слайд 22

Таблица FAT

Таблица FAT состоит из массива индексных указателей, количество которых равно количеству

Таблица FAT Таблица FAT состоит из массива индексных указателей, количество которых равно
кластеров области данных.
Между кластерами и индексными указателями имеется взаимно однозначное соответствие — нулевой указатель соответствует нулевому кластеру и т. д.
Индексный указатель может принимать следующие значения, характеризующие состояние связанного с ним кластера:
кластер свободен (не используется);
кластер используется файлом и не является последним кластером файла; в этом случае индексный указатель содержит номер следующего кластера файла;
последний кластер файла;
дефектный кластер;
резервный кластер.

Слайд 23

Таблица FAT

Таблица FAT является общей для всех файлов раздела.
В исходном состоянии

Таблица FAT Таблица FAT является общей для всех файлов раздела. В исходном
(после форматирования) все кластеры раздела свободны и все индексные указатели (кроме тех, которые соответствуют резервным и дефектным блокам) принимают значение «кластер свободен».

Слайд 24

Таблица FAT

Таблица FAT

Слайд 25

Таблица FAT

Размер таблицы FAT и разрядность используемых в ней индексных указателей определяется

Таблица FAT Размер таблицы FAT и разрядность используемых в ней индексных указателей
количеством кластеров в области данных.
Для уменьшения потерь из-за фрагментации желательно кластеры делать небольшими, а для сокращения объема адресной информации и повышения скорости обмена наоборот.
При форматировании диска под файловую систему FAT обычно выбирается компромиссное решение и размеры кластеров выбираются из диапазона от 1 до 128 секторов, или от 512 байт до 64 Кбайт.

Слайд 26

Таблица FAT

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

Таблица FAT Разрядность индексного указателя должна быть такой, чтобы в нем можно
задать максимальный номер кластера для диска определенного объема.
Существует несколько разновидностей FAT, отличающихся разрядностью индексных указателей: FAT12, FAT16 и FAT32.

Слайд 27

Таблица FAT

В FAT12 используются 12-разрядные указатели, что позволяет поддерживать до 4096 кластеров

Таблица FAT В FAT12 используются 12-разрядные указатели, что позволяет поддерживать до 4096
в области данных диска,
в FAT16 — 16-разрядные указатели для 65 536 кластеров,
в FAT32 — 32-разрядные для более чем 4 миллиардов кластеров.

Слайд 28

Форматирование FAT 12 обычно характерно для небольших дисков объемом не более 16

Форматирование FAT 12 обычно характерно для небольших дисков объемом не более 16
Мбайт, чтобы не использовать кластеры более 4 Кбайт.
FAT 16 целесообразнее для дисков с объемом не более 512 Мбайт,
Для больших дисков лучше подходит FAT32, которая способна использовать кластеры 4 Кбайт при работе с дисками объемом до 8 Гбайт и только для дисков большего объема начинает использовать 8, 16 и 32 Кбайт.

Слайд 29

Максимальный размер раздела FAT 16 ограничен 4 Гбайт, такой объем дает 65

Максимальный размер раздела FAT 16 ограничен 4 Гбайт, такой объем дает 65
536 кластеров по 64 Кбайт каждый.
Максимальный размер раздела FAT32— 232 кластеров по 32 Кбайт.

Слайд 30

Таблица FAT при фиксированной разрядности индексных указателей имеет переменный размер, зависящий от

Таблица FAT при фиксированной разрядности индексных указателей имеет переменный размер, зависящий от объема области данных диска.
объема области данных диска.

Слайд 31

При удалении файла из файловой системы FAT в первый байт соответствующей записи

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

Слайд 32

Резервная копия FAT всегда синхронизируется с основной копией при любых операциях с

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

Слайд 33

Используемый в FAT метод хранения адресной информации о файлах не отличается большой

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

Слайд 34

Каталоги и каталожные записи

Каталоги и каталожные записи

Слайд 35

Каталог (directory) – это, логически, список файлов.
Физически каталог является файлом специального вида.

Каталог (directory) – это, логически, список файлов. Физически каталог является файлом специального
Исключение составляет корневой каталог FAT12/FAT16 - он не является файлом, хотя имеет структуру, полностью аналогичную структуре каталога-файла.
Файл каталога состоит из записей размером 32 байта, называемых каталожными.

Слайд 36

Каталожная запись MS-DOS

Каталожная запись MS-DOS

Слайд 37

Полное имя

Полное имя файла указывается в формате 8+3: 8 символов для имени,

Полное имя Полное имя файла указывается в формате 8+3: 8 символов для
3 символа для расширения, поля выравниваются влево, неиспользуемые символы заполняются символом "пробел" (код 20h).
Буквы в имени и расширении файла в каталожной записи приводятся к регистру ПРОПИСНЫЕ

Слайд 38

Атрибуты

Атрибуты

Слайд 39

Записи о каталогах всегда имеют поле "размер файла", равное 0, независимо от

Записи о каталогах всегда имеют поле "размер файла", равное 0, независимо от фактического размера каталога.
фактического размера каталога.

Слайд 40

Время создания файла

Время создания файла

Слайд 41

Дата создания файла

 
Год записывается от 1980, например, 2003 год будет записан как

Дата создания файла Год записывается от 1980, например, 2003 год будет записан
23 (2003-1980), а 1960 и 2060 год будут записаны одинаково как 80 (2060-1980).

Слайд 42

Специальные записи

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

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

Слайд 43

Специальные записи

Запись, первый байт которой равен E5h (греческая сигма), означает, что файл

Специальные записи Запись, первый байт которой равен E5h (греческая сигма), означает, что файл был удален.
был удален.

Слайд 44

Специальные записи

Специальная запись "метка тома" (Volume Label) создается в корневом каталоге
Эта запись

Специальные записи Специальная запись "метка тома" (Volume Label) создается в корневом каталоге
имеет атрибут 28h (биты "архивный" и "метка тома") и поля "первый кластер" и "размер", равные нулю.

Слайд 45

Каталожная запись Windows (FAT32)

При создании файловой системы FAT32 нужно было решить множество

Каталожная запись Windows (FAT32) При создании файловой системы FAT32 нужно было решить
проблем:
Расширить поле для первого кластера до 4-х байт;
Добавить поля для даты и времени создания и последнего доступа;
Разрешить длинные имена файлов;
Обеспечить обратную совместимость с MS-DOS;
Найти механизм для защиты от разрушения новых записей системой MS-DOS.
В результате в системе FAT32 применяются два формата каталожных записей одновременно.

Слайд 46

Короткое имя

С целью обеспечения возможности чтения длинных имен файлов (появившихся в

Короткое имя С целью обеспечения возможности чтения длинных имен файлов (появившихся в
Windows 95 OSR2) в операционных системах, использующих формат имени 8+3, было введено понятие короткого имени MS-DOS.
Это имя файла или каталога, получаемое из длинного имени приведением к формату 8+3 по определенным правилам.

Слайд 47

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

Так как в длинных именах файлов разрешается использовать намного больше символов, чем
в MS-DOS, недопустимые символы заменяются на возможно похожие символы из второй половины таблицы ASCII-8 (коды 128-175) и приводятся к верхнему регистру.
Пробелы и точки (за исключением точки, которая соединяет имя и расширение) удаляются, недопустимые символы заменяются символом подчеркивания.
Далее имя файла отделяется от расширения и усекается до первых 6-ти символов, к полученному имени приписывается 2 символа: ~1.
Если такое имя в каталоге есть, число 1 после тильды заменяется на число 2 и так далее, пока не будет образовано уникальное имя. Если число после тильды превысит один разряд (например, станет равным 10), то первые 6 символов усекаются до пяти.

Слайд 48

Формат короткого имени

Формат короткого имени

Слайд 49

Длинное имя

В этом формате поле атрибутов файла всегда равно 0Fh, что является

Длинное имя В этом формате поле атрибутов файла всегда равно 0Fh, что
недопустимым сочетанием в записи MS-DOS. Благодаря этому новые записи "не видны" для MS-DOS.
Поле для начального кластера файла всегда равно нулю, чтобы избежать ошибок при трактовании этой записи, как правильной.
Поле NT всегда равно 0, а в поле CS находится старший байт контрольной суммы. Контрольная сумма используется для проверки каталога на случай, если система MS-DOS изменит запись с коротким именем.
Так как длинное имя файла слишком велико, чтобы уместиться в одной записи, система FAT32 записывает их столько, сколько нужно, с учетом того, что в одну запись можно записать до 13-ти символов в кодировке Unicode. Минимальное число новых записей 1, максимальное – 20.
Каждая новая запись пронумерована двоичным числом от 1, которое записывается в поле, обозначенное N, при этом к номеру последней записи прибавляется 64 (40h).
Новые записи располагаются в обратном порядке непосредственно перед записью с коротким именем.
Имя файла: FAT.pptx
Количество просмотров: 629
Количество скачиваний: 12