Файловые системы Unix (s5 и ufs)
ОС ufs (Unix File System) является развитием системы s5(System V), и расширяет ее возможности по поддержке больших дисков и файлов, а также повышает ее надежность. Поэтому эти две системы используют очень близкую физическую модель файлосовй системы.
В Юникс кластер называется блоком.
Раздел диска, где размещается ФС s5 делится на такие области:
· Загрузочныйблок
· Суперблок (superblock) – общая инфа о ФС:
o Размер ФС
o Размер области индексных дескрипторов
o Число индексных дескрипторов
o Список свободных блоков
o Список свободных индексных дескрипторов и тд
· Область индексных дескрипторов (inode list):
o Порядок расположения дескрипторов соответствует их номерам
· Область данных:
o Корневой каталог
o Файлы-каталоги
o Обычные файлы
o Специальных файлов как таковых НЕТ, есть только индексные дескрипторы спец формата, а места они не занимают.
Особенность этой ФС – отделение имени файла от его характеристик, которые хранятся в ИНДЕКСНОМ ДЕСКРИПТОРЕ (за счет этого один файл может входить в несколько каталогов)
Индексный дескриптор:
· Размер – 64 байта
· Хранит инфу о:
o Владельце файла
o Типе файла (обычный, каталог, специальный, конвейер, символьная связь)
o Права доступа
o Временные характеристики (создание, модификаци и тд)
o Число ссылок на данный дескриптор (количество псевдонимов файла)
o Адресная информация (как организована адресная информация, см. Варианты физической организации файла, вариант 4)
o Размер файла в байтах
· Имеет номер – уникальное имя файла
· Дескрипторы расположены в строгом соответствии со своими номерами
· Соответствие между номером дескриптора и символьным именем – через иерархию каталогов.
Запись о файле в каталоге:
Очень проста – только имя и номер дескриптора:
Нет никаких ограничений размера корневого файла.
Доступ к файлу – путем последовательного просмотра всей цепочки каталогов, начиная с корневого, адрес которого известен системе:
Эта процедура требует нескольких общащений к диску (чем длиннее путь, тем больше обращений). Чтобы уменьшить число обращений к диску, дескриптор файла при его открытии копируется в специальную системную область оперативной памяти.
FAT
Логический раздел, оптимизированный под ФАТ, состоит из:
· Загрузочного сектора – программа начальной загрузки ОС (вид сектора зависит от оси)
· Основная копия ФАТ – информация о размещении файлов и каталогов на диске
· Резервная копия ФАТ
· Корневой каталог – фиксированная область размером в 32 сектора (16 кбайт) – здесь можно хранить 512 записей о каталогах и файлах (каждая запись каталога состоит из 32 байт)
· Область данных
Система поддерживает 2 типа файлов:
· Каталог
· Обычный файл
ФС распределяет памятьтолько из области данных.
Таблица ФАТ:
Состоит из массива индексных указателей, количество которых равно количеству кластеров данных – однозначное соответствие.
Значения индексного указателя в таблице ФАТ:
· Свободен
· Занят и не последний (содержит номер следующего кластера)
· Последний кластер
· Дефектный кластер
· Резервный кластер
Таблица ФАТ – общая для всех файлов раздела.
Размер кластеров:
· Чем больше кластер – тем меньше адресной информации и выше скорость обмена
· Но тем больше фрагментация
· Выбирается компромисс: 512 байт – 64 кБайт (1-128 секторов);
Разрядность индексного указателя должна позволить задать максимальный номер кластерадля диска определенного объема:
ФАТ 12 – 12 разрядов – 4096 кластеров – для дисков не более 16 Мбайт
ФАТ 16 – 16 разрядов – 65 536 кластеров – для дисков не более 512 Мбайт
ФАТ 32 – 32 разряда – больше 4 млрд кластеров – для больших дисков
При удалении файла в ФАТ информация о первом кластере файла не стирается, только в каталоге помечается, что файл свободен и обнуляются все индексные дескрипторы. Поэтому недавно удаленную информацию можно хотя бы частично (то, что хранится в последовательных кластерах) удалить.
Резервная копия ФАТ всегда синхронизируется с основной, поэтому с ее помощью неправильные пользовательские действия, которые выглядели как правильные с точки зрения ОС не восстановить.
Метод хранения адресной инфы в ФАТ не надежен – один сбой – разрыв списка индексных укзателей – все пропало, инфа о последующих записях потеряна.
Имена файлов в ФАТ:
12 и 16 – схема 8.3 – 8 символов на имя файла и 3 – на расширение.
Потом в ФАТ 16 для НТ ввели длинное имя – до 255 символом.
ФАТ в ПК сегодня поддерживается ради обратной совместимости, но не используется. Зато используется на флешках.
NTFS
Отличия НТФС:
· Поддержка больших файлов и больших дисков (до 2 в 64 байт)
· Восстанавливаемость после сбоев и отказов
· Высокая скорость операций (втч и для больших дисков)
· Низкий уровень фрагментации
· Гибкая структура (добавление новых типов файлов и тд)
· Устойчивость к отказам дисковых накопителей
· Поддержка длинных имен
· Контроль доступа к файлам и каталогам
Логический раздел здесь называется ТОМОМ.
Все пространство НТФС – это либо файл, либо часть файла.
Основа НТФС – MFT – Master File Table – главная таблица файлов.
Все файлы тома идентифицируются уникальным номером файла.
Том состоит из последовательности кластеров (не только его область данных, а весь-весь том)
Порядковый номер каждого кластера в томе – это егоЛОГИЧЕСКИЙ номер LCN.
Внутри каждого файла кластеры тоже пронумерованы – этоВИРТУАЛЬНЫЙ номер кластера – VCN
Единица распределения дисковоко пространства – ОТРЕЗОК – непрерывная область кластеров.
Для адресации файла ФС юзает пару:
· LCN первого кластера файла и
· k – количество кластеров в отрезке.
Чтобы найти какой-то кластер внутри файла, нужен еще VCN этого кластера.
Номер кластера хранится в 64 разрядных указателях – максимальный размер файла – 2 64 кластеров.
Структура тома НТФС:
· Загрузочный блок
o Блок параметров БИОС
o Количество блоков в томе
o Начальный LCN основной копии МФТ
o Зеркальную копию МФТ
· Первый отрезок МФТ
o 16 стандартных записей о системных файлах NTFS, которые создаются при форматировании:
§ Главная таблица файлов – полный список файлов тома НТФС
§ Копия главной таблицы файлов – зеркальная копия первых трех записей МФТ
§ Журнал (для восстановления системы)
§ Том (имя тома, версия НТФС и другая инфа о томе)
§ Таблица имен, номеров и описаний атрибутов
§ Индекс корневого каталога
§ Битовая карта использованных кластеров тома
§ Загрузочный сектор раздела
§ Список плохих кластеров
§ Таблица квот использования пространства для разных пользователей
§ Таблица преобразования регистра символов (для Юникод)
· Ровно посередине тома – копия загрузочного блока
· Системные файлы
· Другие отрезки МФТ
Если файл маленький, он целиком помещается в записи МФТ.
Если большой – то в МФТ – его резидентная часть, а нерезидентная часть – в отдельном отрезке тома. Адресная инфа, где искать нерезидентную часть – в атрибутах резидентной части.
Структура файла НТФС: