
- •1 Введение 2
- •История развития файловой системы
- •Логическая структура диска
- •Главная загрузочная запись
- •Загрузочная запись
- •Загрузка операционной системы
- •Первичный и расширенный раздел
- •Файловые системы Windows
- •Fat12, fat16
- •Структура fat
- •Файлы и каталоги
- •Использование fat в Windows
- •Длинные имена
- •Генерация короткого имени файла
- •Проблемы fat16
- •Устранение потерь
- •Изменения архитектуры fat
- •Архитектура файловой системы hpfs
- •Особенности использования hpfs с Windows nt 3.5x
- •Возможности ntfs
- •Архитектура файловой системы ntfs
- •Главная файловая таблица
- •Атрибуты файла ntfs
- •Системные файлы ntfs
- •Защита целостности данных
- •Горячая фиксация
- •Механизм транзакций
- •Ленивая передача
- •Контрольные точки файла регистрации
- •Сравнение возможностей fat, hpfs и ntfs
Файловые системы Windows
Fat12, fat16
Структура fat
Как было отмечено ранее, файловая система FAT названа в соответствии с названием метода организации данных — таблицы распределения данных. Эта таблица обеспечивает связи одного распределяемого блока (одного или нескольких кластеров) с другим.
Что же хранится в таблице размещения файлов?
Если ответить на этот вопрос кратко, то в FAT находятся списки кластеров, распределённых файлам. Все свободные кластеры отмечены нулями.
Таким образом, если файл занимает несколько кластеров, то эти кластеры связаны в список. При этом элементы таблицы FAT содержат номера следующих используемых данным файлом кластеров. Конец списка отмечен в таблице специальным значением. Номер первого кластера, распределённого файлу, хранится в элементе каталога, описывающего данный файл.
Таблица FAT может иметь 12- или 16-битовый формат. При этом в таблице для хранения информации об одном кластере используется 12 или 16 бит.
12-битовый формат удобен для дискет с небольшим количеством секторов — вся FAT помещается в одном секторе диска.
Если размер диска таков, что для представления всех секторов недостаточно 12-ти разрядов, можно увеличить размер кластера, например, до восьми секторов.
Однако большой размер кластера приводит к неэффективному использованию дискового пространства. Это происходит из-за того, что минимальный фрагмент дисковой памяти, выделяемый файлу, имеет слишком большой размер. Даже для файла размером 1 байт выделяется целый кластер. Значит, если размер кластера составляет 8 секторов, то для хранения одного байта будет использовано 4 КБайт дисковой памяти.
При использовании 16-битного формата таблицы FAT операционная система может работать с диском, который имеет размер более 32 МБайт.
Файлы и каталоги
Файловая система FAT имеет древовидную структуру. В корневом каталоге располагаются 32-байтовые элементы, которые содержат информацию о файлах и других каталогах.
Корневой каталог занимает непрерывную область фиксированного размера. Размер корневого каталога задаётся при форматировании и определяет максимальное количество файлов и каталогов, которые могут быть в нём описаны.
Вслед за корневым каталогом на логическом диске находится область файлов и подкаталогов корневого каталога.
Область данных разбита на кластеры, причём нумерация кластеров начинается с двойки. Кластеру с номером 2 соответствуют первые секторы области данных.
Любой каталог содержит 32-байтовые элементы — дескрипторы, описывающие файлы и другие каталоги. Формат дескриптора следующий:
Смещение (байт) |
Размер (байт) |
Содержимое |
0 |
8 |
Имя файла или каталога, выровненное на левую границу и дополненное пробелами. |
8 |
3 |
Расширение имени файла, выровненное на левую границу и дополненное пробелами. |
11 |
1 |
Байт атрибутов файла |
12 |
10 |
Зарезервировано |
22 |
2 |
Время создания файла или время его последней модификации |
24 |
2 |
Дата создания файла или время его последней модификации |
26 |
2 |
Номер первого кластера, распределённого файлу |
28 |
4 |
Размер файла в байтах |
Табл. 2
В любом каталоге, кроме корневого, два первых дескриптора имеют специальное назначение. Первый дескриптор содержит в поле имени строку «.». Этот дескриптор указывает на содержащий его каталог, то есть каталог имеет ссылку на себя. второй специальный дескриптор имеет имя «..». Этот дескриптор указывает на каталог более высокого уровня.
Таким образом, в древовидной структуре каталогов файловой системы FAT имеются ссылки как в прямом, так и в обратном направлении. Эти ссылки можно использовать для проверки целостности структуры каталогов файловой системы.
Биты байта атрибута файла в элементе каталога указывают, имеет ли файл соответствующие атрибуты. Первый бит идентифицирует каталог; второй отмечает файл в качестве метки логического диска. Обычно только операционная система может управлять значением этих битов. Кроме этого, файлы FAT имеют четыре специальных атрибута, которые могут применяться пользователем: архивный, системный, скрытый и атрибут «только для чтения».