Понятие «файл» включает не только хранимые им данные и имя, но и атрибуты. Атрибуты - это информация, описывающая свойства файла.
Примеры возможных атрибутов файла:
тип файла (обычный файл, каталог, специальный файл и т. п.);
владелец файла;
создатель файла;
пароль для доступа к файлу;
информация о разрешенных операциях доступа к файлу;
времена создания, последнего доступа и последнего изменения;
текущий размер файла;
максимальный размер файла;
признак «только для чтения»;
признак «скрытый файл»;
признак «системный файл»;
признак «архивный файл»;
признак «двоичный/символьный»;
признак «временный» (удалить после завершения процесса).
Набор атрибутов файла определяется спецификой файловой системы: в файловых системах разного типа для характеристики файлов могут использоваться разные наборы атрибутов. В однопользовательской ОС в наборе атрибутов будут отсутствовать характеристики, имеющие отношение к пользователям и защите, такие, как владелец файла, создатель файла, пароль для доступа к файлу, информация о разрешенном доступе к файлу.
|
|
Пользователь может получать доступ к атрибутам, используя средства, предоставленные для этих целей файловой системой. Обычно разрешается читать значения любых атрибутов, а изменять - только некоторые. Например, пользователь может изменить права доступа к файлу (при условии, что он обладает необходимыми для этого полномочиями), но изменять дату создания или текущий размер файла ему не разрешается.
Значения атрибутов файлов могут непосредственно содержаться в каталогах, как это сделано в файловой системе MS-DOS (рис. 5. 4, а). На рисунке представлена структура 32-байтной записи в каталоге, содержащая простое символьное имя и атрибуты файла. Здесь буквами обозначены бинарные признаки файла: R - только для чтения, А – архивный, Н - скрытый, S - системный, M – метка тома, D – каталог.
8 3 1 4
Имя файла | Расширение | R | А | Н | S | M | D | Резервные | |
Резервный | Время | Дата | № первого кластера | Размер | |||||
а)
2 14
№ индексного дескриптора | Имя файла |
б)
Рис. 5. 4. Структура каталогов:
a – структура записи каталога MS-DOS (32 байта); б – структура
записи каталога ОС UNIX
Другим вариантом является размещение атрибутов в специальных таблицах, когда в каталогах содержатся только ссылки на эти таблицы. Такой подход реализован, например, в файловой системе ufs ОС UNIX. В этой файловой системе структура каталога очень простая. Запись о каждом файле содержит короткое символьное имя файла и указатель на индексный дескриптор файла, так называется в ufs таблица, в которой сосредоточены значения атрибутов файла (рис. 5. 4, б). В том и другом вариантах каталоги обеспечивают связь между именами файлов и собственно файлами. Однако подход, когда имя файла отделено от его атрибутов, делает систему более гибкой. Например, файл может быть легко включен сразу в несколько каталогов. Записи об этом файле в разных каталогах могут содержать разные простые имена, но в поле ссылки будет указан один и тот же номер индексного дескриптора.
|
|