- •7 Пара. Разделы, отказоустойчивостью hdd, raid, Файловые системы Windows, Unix
- •Физическая организация файловой системы
- •Диски, разделы, секторы, кластеры
- •Тома в unix-подобных операционных системах
- •Тома и разделы в дисковых ос Microsoft
- •Файловые системы, основанные на расширениях
- •Ссылочное размещение файла
- •Индексируемое размещение
- •Эффективность и производительность дисковой памяти
- •Файловая система
- •Классификация файловых систем
- •Задачи файловой системы
- •Особенности
- •Логическая организация файловой системы
- •Типы файлов
- •Иерархическая структура файловой системы
- •Атрибуты файлов
- •11.2 Файловая система ms-dos (fat-12,16,32)
- •Каталоговая запись ms-dos, обратите внимание на пустые 10 байт, они будут задействованы в Windows 98
- •11.2.4 Расширение Windows 98 для fat-32
- •11.3 Файловая система ntfs
- •Структура раздела - общий взгляд
- •Mft и его структура
- •Главная файловая таблица mft, каждая запись ссылается на файл или каталог.
- •Три записи mft для сильно фрагментированного файла. В первой записи указывается индексы на дополнительные записи.
- •Файлы и потоки
- •Каталоги
- •Журналирование
- •Безопасность
- •Шифрование (nt5)
- •Примеры монтирования удаленных файловых систем
- •Структура уровней файловой системы nfs
- •-10.1.2 Структура файла
- •Три типа структур файла.
- •10.1.3 Типы файлов (слайд №10)
- •Примеры исполняемого и не исполняемого файла
- •10.1.4 Доступ к файлам
- •10.1.5 Атрибуты файла (слайд №11)
- •10.1.6 Операции с файлами (слайд №12)
- •-10.1.7 Файлы, отображаемые на адресное пространство памяти
- •Пример копирования файла через отображение в памяти.
- •-10.2 Каталоги -10.2.1 Одноуровневые каталоговые системы
- •-10.2.2 Двухуровневые каталоговые системы
- •Двухуровневая каталоговая система
- •-10.2.3 Иерархические каталоговые системы
- •Иерархическая каталоговая система
- •10.2.4 Имя пути (слайд №13)
- •10.2.5 Операции с каталогами (слайд №14)
- •-10.3 Структура файловой системы
- •Возможная структура файловой системы
- •-10.4 Реализация файлов
- •-10.4.1 Непрерывные файлы
- •5 Непрерывных файлов на диске и состояние после удаления двух файлов
- •-10.4.2 Связные списки
- •Размещение файла в виде связного списка блоков диска
- •-10.4.3 Связные списки при помощи таблиц в памяти
- •Примеры I-узла
- •-10.5 Реализация каталогов
- •Варианты реализации каталогов -10.5.1 Реализация длинных имен файлов
- •Реализация длинных имен файлов -10.5.2 Ускорение поиска файлов
- •1 Использование хэш-таблицы для ускорения поиска файла.
- •2 Использование кэширования результатов поиска файлов для ускорения поиска файла.
- •-10.6 Совместно используемые файлы
- •-10.6.1 Жесткие ссылки
- •Иллюстрация проблемы, которая может возникнуть -10.6.2 Символьные ссылки
- •-10.7 Организация дискового пространства -10.7.1 Размер блока
- •Скорости чтения/записи и эффективность использования диска, в системе с файла одинакового размера 2 Кбайта.
- •-10.7.2 Учет свободных блоков
- •Основные два способа учета свободных блоков -10.7.3 Дисковые квоты
- •-10.8 Надежность файловой системы -10.8.1 Резервное копирование
- •-10.8.2 Непротиворечивость файловой системы
- •10.11 Производительность файловой системы (слайд №15)
- •10.11.1 Кэширование
- •10.11.2 Опережающее чтение блока
- •10.11.3 Снижение времени перемещения блока головок
- •-Системы файлов
- •-Понятие файла
- •-Структура файла
- •-Атрибуты файла
- •-Операции над файлами
- •-Типы файлов – имена и расширения
- •-Методы доступа к файлам
- •-Директории
- •-Особенности системы файлов в "Эльбрусе"
- •-Типичная организация файловой системы изображена на рис. 19.3.
- •-Операции над директориями
- •-Логическая организация директорий
- •-Монтирование файловых систем
- •-Общий доступ к файлам
- •-Защита файлов
- •-Реализация файловых систем
- •-Структура файловой системы
- •-Системные структуры в памяти для управления файловой системой
- •-Ключевые термины
-10.5 Реализация каталогов
При открытии файла используется имя пути, чтобы найти запись в каталоге. Запись в каталоге указывает на адреса блоков диска.
В зависимости от системы это может быть:
дисковый адрес всего файла (для непрерывных файлов)
номер первого блока (связные списки)
номер i-узла
Одна из основных задач каталоговой системы преобразование ASCII-имени в информацию, необходимую для нахождения данных.
Также она хранит атрибуты файлов.
Варианты хранения атрибутов:
В каталоговой записи (MS-DOS)
В i-узлах (UNIX)
Варианты реализации каталогов -10.5.1 Реализация длинных имен файлов
Раньше операционные системы использовали короткие имена файлов, MS-DOS до 8 символов, в UNIX Version 7 до 14 символов. Теперь используются более длинные имена файлов (до 255 символов и больше).
Методы реализации длинных имен файлов:
Просто выделить место под длинные имена, увеличив записи каталога. Но это займет много места, большинство имен все же меньше 255.
Применить записи с фиксированной частью (атрибуты) и динамической записью (имя файла).
Второй метод можно реализовать двумя методами:
Имена записываются сразу после заголовка (длина записи и атрибутов)
Имена записываются в конце каталога после всех заголовков (указателя на файл и атрибутов)
Реализация длинных имен файлов -10.5.2 Ускорение поиска файлов
Если каталог очень большой (несколько тысяч файлов), последовательное чтение каталога мало эффективно.
1 Использование хэш-таблицы для ускорения поиска файла.
Алгоритм записи файла:
Создается хэш-таблица в начале каталога, с размером n (n записей).
Для каждого имени файла применяется хэш-функция, такая, чтобы при хэшировании получалось число от 0 до n-1.
Исследуется элемент таблицы соответствующий хэш-коду.
Если элемент не используется, туда помещается указатель на описатель файла (описатели размещены вслед за хэш-таблицей).
Если используется, то создается связный список, объединяющие все описатели файлов с одинаковым хэш-кодом.
Алгоритм поиска файла:
Имя файла хэшируется
По хэш-коду определяется элемент таблицы
Затем проверяются все описатели файла из связного списка и сравниваются с искомым именем файла
Если имени файла в связном списке нет, это значит, что файла нет в каталоге.
Такой метод очень сложен в реализации, поэтому используется в тех системах, в которых ожидается, что каталоги будут содержать тысячи файлов.
2 Использование кэширования результатов поиска файлов для ускорения поиска файла.
Алгоритм поиска файла:
Проверяется, нет ли имени файла в кэше
Если нет, то ищется в каталоге, если есть, то берется из кэша
Такой способ дает ускорение только при частом использовании одних и тех же файлов.
-10.6 Совместно используемые файлы
Иногда нужно чтобы файл присутствовал в разных каталогах.
Link (связь, ссылка) - с ее помощью обеспечивается присутствие файла в разных каталогах.
А - совместно используемый файл.
Такая файловая система называется ориентированный ациклический граф (DAG, Directed Acyclic Graph).
Возникает проблема, если дисковые адреса содержатся в самих каталоговых записях, тогда при добавлении новых данных к совместно используемому файлу новые блоки будут числится только в каталоге того пользователя, который производил эти изменения в файле.
Есть два решения этой проблемы:
Использование i-узлов, в каталогах хранится только указатель на i-узел. Такие ссылки называются жесткими ссылками.
При создании ссылки, в каталоге создавать реальный Link-файл, новый файл содержит имя пути к файлу, с которым он связан. Такие ссылки называются символьными ссылками.