Файловые системы 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, которые создаются при форматировании:

§ Главная таблица файлов – полный список файлов тома НТФС

§ Копия главной таблицы файлов – зеркальная копия первых трех записей МФТ

§ Журнал (для восстановления системы)

§ Том (имя тома, версия НТФС и другая инфа о томе)

§ Таблица имен, номеров и описаний атрибутов

§ Индекс корневого каталога

§ Битовая карта использованных кластеров тома

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

§ Список плохих кластеров

§ Таблица квот использования пространства для разных пользователей

§ Таблица преобразования регистра символов (для Юникод)

· Ровно посередине тома – копия загрузочного блока

· Системные файлы

· Другие отрезки МФТ

Если файл маленький, он целиком помещается в записи МФТ.

Если большой – то в МФТ – его резидентная часть, а нерезидентная часть – в отдельном отрезке тома. Адресная инфа, где искать нерезидентную часть – в атрибутах резидентной части.

Структура файла НТФС: