Логическая и физическая организация файлов.

Как правило, различают логическую (концептуальную) и физическую организацию данных на внешних устройствах.

Логическая организация.

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

Последовательный доступ. Как правило, записи могут быть двух типов: фиксированной длины и переменной длины. Для доступа к записи n необходимо пропустить (n-1)L байтов. Для записи переменной длины, как правило, в поле записи, имеются данные о ее длине, либо метка конца блока (логической записи).

 
  Логическая и физическая организация файлов. - student2.ru

Прямой доступ. Все записи имеют номера и идентификатор для позиционирования. Логическая запись адресуется установкой каретки с дальнейшей операцией чтения/записи. Как правило, при прямом доступе логические записи фиксированной длины.

Индексный доступ. В начале файла имеется таблица (индекс), причем каждому индексу соответствует физический адрес записи.

Доступ осуществляется логически по индексу, который преобразуется в номер физической записи из таблицы.

Индексно-последовательный. Существует таблица индексов, но другая.

Индекс
№ записи
                 

Индекс указывает на зону внешней памяти, в которой записи расположены последовательно. Сначала по индексу находится зона внешней памяти, а в зоне последовательно запись.

Библиотечный доступ – оглавление - разделы

Физическая организация.

Файл, логически имеющий вид непрерывной области байтов, физически разбросан по диску кусками. Сектор - наименьшая адресуемая единица обмена данными между диском и памятью. Разметка внешней памяти на сектора осуществляется процедурой форматирования низкого уровня. Каждое внешнее устройство имеет различное количество секторов и их длинну. Разметку диска под ту или иную файловую систему выполняет соответствующая утилита данной ОС. На внешнем носителе могут располагаться несколько логических устройств (файловых систем). Раздел - непрерывная часть физического диска, которую ОС рассматривает как отдельное устройство. В различных разделах форматирование может происходит по-разному. Кластер - информационный блок, может содержать несколько секторов. Можно выделить следующие способы физической организации данных:

- непрерывное размещение (файлу предоставляется последовательность кластеров диска, образующих непрерывный участок дисковой памяти). Достоинства: высокая скорость доступа, минимальная адресная информация. Недостатки: фрагментация.

 
  Логическая и физическая организация файлов. - student2.ru

- связанные списки кластеров. При таком способе в начале каждого кластера содержится ссылка на следующий кластер. Достоинства: минимальная адресная информация. Недостаток: сложность реализации доступа, для того, чтобы прочитать n-ый кластер нужно прочитать (n-1).

 
  Логическая и физическая организация файлов. - student2.ru

- использование связанного списка индексов. Является модификаций предыдущего способа. Файлу выделяется память в виде списка кластеров. Номер первого кластера запоминается в записи каталога. С каждым кластером диска связан некоторый элемент - индекс. Индексы располагаются в отдельном месте. Когда диск свободен, все индексы равны 0 или 1. Если кластер n выделен некоторому файлу, то индекс становится равным n либо (n+1) - номер следующего кластера данного файла. А может быть нули. Достоинства: минимальная адресная информация, не требуется просмотр всех кластеров, требуется просмотр таблицы индексов, которая может хранится в реальной ОП (перемещать головки и читать не нужно много раз). Пример: файловая система MSDOS.

-использование перечисления кластеров файла. В этом случае перечень кластеров служит сам по себе адресной частью файла. Достоинства: прямая адресация к файлу (без просмотра цепочек). Недостаток: длина адреса зависит от размера файла.

- i-узлы. Метод состоит в связывании с каждым файлом структуры данных, называемой i-node. i-node содержит атрибуты файла и адреса кластеров секторов. Достоинства: i-node находится в реальной памяти, когда файл открыт, поэтому доступ осуществляется быстро. Если i-node занимает n байт, а одновременно может быть открыто k файлов, то для массива i-node потребуется kn байт (это не много, значительно меньше FAT).

Адресация файлов в UFS.

Кластеры файла адресуется в соответствии с некоторой схемой.

Логическая и физическая организация файлов. - student2.ru

Для хранения адресов кластеров файла выделяется 15 полей, каждое поле состоит из 4х байт. Кластеры в этой ФС имеют длину 8 кб. Если размер файла <= 12, то можно реализовать 12*8 кб=96 кб файла. Если > 12, 13е поле содержит адрес кластера, в котором расположены адреса следующих кластеров файла. Если количество кластеров файлов ещё больше, то подключается 13 и 14 поля, причем они представляют собой иерархию кластеров, в которых находятся номера. Такая схема адресации позволяет адресовать файл, длинной 7*10^10 байт.

Файловая система MSDOS.

Логический раздел можно представить следующим образом (файловая система FAT):

 
  Логическая и физическая организация файлов. - student2.ru

Загрузочный сектор содержит программу загрузки (IPL).

Формат записи и каталоге или файле:

имя файла расширение атрибуты резерв
время дата №кластера размер

3. Дескриптор описывает метку диска.

4. Дескриптор описывает файл.

5. Архивный.

6-7. Резерв.

FAT - массив или таблица об использовании поверхности диска. Когда создается файл, создается запись в каталоге, в которой отмечается первый выделенный для данного файла кластер. При размещении файла ОС просматривает FAT и ищет первый свободный индекс. FAT представляет собой массив из элементов. ОС ищет первый свободный индекс или указатель. Каждый кластер может находится в следующих состояниях:

свободный - 0

зарезервированный

плохой

последний кластер в списке

номер следующего кластера в списке.

После отыскания свободного элемента в FATе номер первого кластера фиксируется в записи. В кластер с этим номером файла заносятся данные файла (первая порция). Если файл умещается в один кластер, то в FATe в этом месте ставится флажок - последний кластер файла (недействительный символ). Если файл не умещается в один кластер, то ОС продолжает просматривать FAT в поиске свободного указателя. Номер первого свободного указателя заносится в предыдущий указатель.

 
  Логическая и физическая организация файлов. - student2.ru


Наши рекомендации