Иерархическая структура файловой системы



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

 

    а)                                           б)                                 в)

Рис. 1 Иерархия файловых систем

 

Граф, описывающий иерархию каталогов, может быть деревом или сетью. Каталоги образуют дерево, если файлу разрешено входить только в один каталог (б – в Windows), и сеть – если файл может входить сразу в несколько каталогов (в – в UNIX).

При такой организации пользователь освобожден от запоминания имен всех файлов, ему достаточно примерно представлять, к какой группе может быть отнесен тот или иной файл, чтобы путем последовательного просмотра каталогов найти его. Иерархическая структура удобна для многопользовательской работы: каждый пользователь со своими файлами локализуется в своем каталоге или поддереве каталогов, и вместе с ним все файлы в системе логически связаны.

Атрибуты файлов

Понятие файл включает не только хранимые им данные и имя, но и атрибуты.

Атрибуты – это информация, описывающая свойства файла:

Ø тип файла (обычный, каталог, специальный и т.п.);

Ø владелец файла;

Ø создатель файла;

Ø пароль для доступа к файлу;

Ø информация о разрешенных операциях доступа к файлу;

Ø время создания, последнего доступа и последнего изменения;

Ø текущий размер файла;

Ø максимальный размер файла;

Ø признак «только для чтения»;

Ø признак «скрытый файл»;

Ø признак «системный файл»;

Ø признак «архивный файл»;

Ø признак «двоичный/символьный»;

Ø признак «временный» (удалить после завершения процесса);

Ø признак «блокировки»;

Ø длина записи в файле;

Ø указатель на ключевое поле в записи;

Ø длина ключа.

Набор атрибутов файла определяется спецификой файловой системы. Например, в файловых системах, поддерживающих неструктурированные файлы, нет необходимости использовать три последних атрибута в приведенном списке, связанных со структуризацией файла. В однопользовательской ОС в наборе атрибутов будут отсутствовать характеристики, имеющие отношение к пользователям и защите: владелец файла, создатель файла, пароль для доступа к файлу, информация о разрешенном доступе к файлу.

Пользователь может получать доступ к атрибутам, используя средства, предоставленные для этих целей файловой системы. Обычно разрешается читать значения всех атрибутов, а изменять только некоторые.

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

 

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

    В общем случае данные, содержащиеся в файле, имеют некую логическую структуру. Эта структура является базой при разработке программы, предназначенной для обработки этих данных.

    Например, чтобы текст был правильно выведен на экран, программа должна иметь возможность выделить отдельные слова, строки, абзацы и т.д.

    Поддержание структуры данных может быть целиком возложено на приложение, либо в той или иной степени эту работу может взять на себя файловая система.

    В первом случае файл представляется файловой системе неструктурированной последовательностью данных. Приложение формулирует запросы к файловой системе на ввод-вывод, используя общие для всех приложений системные средства. Поступивший к приложению поток байт интерпретируется в соответствии с заложенной в программе логикой. Например, компилятор генерирует, а редактор связей воспринимает вполне определённый формат объектного модуля программы.

    Во втором случае файл представляет собой структурированную последовательность данных. Файловая система видит файл как упорядоченную последовательность логических записей. Приложение может обращаться к файловой системе с запросами на ввод-вывод на уровне записей. Файловая система должна иметь информацию о структуре файла, достаточную для того чтобы выделять любую запись. Развитием этого подхода стали системы управления базами данных (СУБД), которые поддерживают не только сложную структуру данных, но и взаимосвязи между ними.

Логическая запись является наименьшим элементом данных, которым может оперировать программист при организации обмена с внешними устройствами. Даже если обмен совершается большими единицами, ОС должна обеспечивать программисту доступ к отдельной записи.      

Файловая система может использовать два способа доступа к логическим записям: читать или записывать логические записи последовательно (последовательный доступ) или позиционировать файл на запись с указанным номером (прямой доступ).

    Рассмотрим способы логической организации файла.

    1. Данные представлены в виде записей, длина которых фиксирована в пределах файла. Доступ к нужной записи осуществляется последовательным прочтением записей, либо по адресу, вычисленному по её порядковому номеру: если длина записи составляет L, то начальный адрес n-й записи равен L*n.

    2. Данные представлены в виде последовательности записей, размер которых изменяется в пределах одного файла. Для поиска нужной записи система должна последовательно считать все предшествующие записи.

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

 


Дата добавления: 2018-11-24; просмотров: 370; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!