Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
21
Добавлен:
17.04.2013
Размер:
104.96 Кб
Скачать

3

СПО Лекция 17 [15.07.19]

Лекция 17. Файловые системы и распределение дискового пространства

  • Способы доступа к файлам

  • Способы организации файлов

Компоненты файловой системы

  • Управление диском – организация физических блоков диска в файлы

  • Механизм именования файлов – доступ к файлу по имени

  • Защита файлов (ограничение доступа)

  • Обеспечение надежности хранения данных – отказы в работе устройства не должны приводить к потере информации

Способы доступа к файлам

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

С точки зрения пользователя выделяют следующие методы доступа к файлам:

  • Последовательный – данные считываются от начала файла последовательно. Метод трактует файл как неструктурированную последовательность байтов.

  • Прямой – данные считываются сразу, начиная с указанного места. Метод предполагает, что файл состоит из записей фиксированной длины, обращаться к которым можно по номеру. Файловая система пересчитывает номер записи в физические координаты блока (цилиндр, дорожка, блок) и смещение в блоке до начала записи.

  • Контекстный – чтение данных по контексту (ключу). Ключ может быть частью физической записи, идентифицирующей содержимое записи (индексно - последовательные файлы OS 360). Сейчас реализуется в базах данных, путем построения специального каталога (индекса), описывающего положение записей в файле. Т.е. реализуется на уровне выше файловой системы.

Способы организации файлов

Чтобы отслеживать размещение файлов на диске и вести учет свободного места необходимы соответствующие структуры данных.

Непрерывное размещение файлов

  • Файл занимает последовательность секторов (блоков) в соответствии с их физической упорядоченностью на диске.

  • Дескриптор файла содержит номер первого блока и размер файла.

  • При создании файла необходимо знать его размер.

  • Свободное пространство может отслеживаться на основе битовой матрицы. Выбор участка осуществляется методом первого подходящего или наиболее подходящего.

Преимущества:

- Быстрый последовательный доступ

- Простая реализация прямого доступа

Недостатки:

- Внешняя фрагментация, свойственная методам непрерывного распределения памяти, необходимость периодического сжатия информации на диске.

- Проблемы с увеличением размера файла. Требуется копирование на новое место.

Применялся в ранних ОС для персональных компьютеров (RT11, RSX11 фирмы DEC)

Разрывное размещение файлов на основе списков

  • Каждый блок содержит ссылку на следующий блок. (Система Alto)

  • Дескриптор файла содержит указатель на первый блок и размер.

Преимущества:

- Возможность увеличения размера файла

- Отсутствие внешней фрагментации

- Свободное пространство отслеживается как и файл в виде списка.

Недостатки:

- Медленный последовательный доступ.

- Отсутствие прямого доступа. Можно лишь эмулировать прямой доступ на базе последовательного.

- Ненадежность. Потеря блока – потеря всего остатка файла.

Несколько улучшенный вариант списковой организации реализован в MS-DOS на основе таблицы размещения файлов (FAT). Каждому блоку диска поставлен в соответствие элемент FAT, в котором указывается номер следующего блока. Таблица хранится в начале диска и загружается в память целиком. Для повышения надежности создается копия FAT.

Разрывное размещение с использованием таблицы индексов

Дескриптор файла содержит таблицу, адресующую каждый блок файла (VMS, CP-M)

Размер файла объявляется заранее, что создать дескриптор достаточной длины.

Преимущества:

- Возможность увеличения размера файла в пределах заявленного размера

- Отсутствие внешней фрагментации

- Быстрый прямой доступ.

Недостатки:

- Медленный последовательный доступ.

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

Разрывное размещение с использованием многоуровневых индексов

Дескриптор файла содержит таблицу, прямо адресующую 10 блоков файла (UNIX 4.1), один индекс, адресующий косвенный блок первого уровня (содержит 256 прямых ссылок на блоки), один косвенный блок второго уровня (содержит 256 ссылок на косвенные блоки первого уровня) и один косвенный блок третьего уровня (содержит 256 ссылок на косвенные блоки второго уровня)

Основная идея – обеспечить эффективный доступ к маленьким файлам и возможность достаточно эффективной работы с большими файлами (до 16 Гб)

Косвенные блоки размещаются по мере необходимости при увеличении размера файла.

Таблица дескрипторов в ранних версиях имела фиксированный размер размещалась в начале диска. Позже (UNIX BSD 4.2) размещает дескрипторы в начале цилиндра вместе с блоками файла, чтобы исключить время подвода головок к цилиндру.

Преимущества:

- Возможность увеличения размера файла

- Отсутствие внешней фрагментации

- Быстрый прямой доступ.

Недостатки:

- Медленный последовательный доступ.

- Для очень больших файлов необходимо дополнительно читать три косвенных блока.

Соседние файлы в папке вар1