Наверх Системное программирование
Предыдущий раздел Оглавление Следующий раздел

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

Каждый файл имеет имя и содержит данные. Кроме этого, с каждым файлом операционные системы связывают и некоторую другую информацию, например, размер файла или дату и время последнего изменения файла. Такие дополнительные сведения о файлах называются атрибутами файла. Еще они также называются метаданными. Различные операционные системы содержат различные списки атрибутов. Некоторые из возможных атрибутов представлены в табл. 5.1.

Таблица 5.1. Возможные атрибуты файлов
Атрибут Значение
Защита Кто и каким образом может получить доступ к файлу
Пароль Пароль для получения доступа к файлу
Создатель Идентификатор создателя файла
Владелец Текущий владелец
Флаг «только для чтения» 0 — для чтения и записи; 1 — только для чтения
Флаг «скрытый» 0 — обычный; 1 — не предназначенный для отображения в перечне файлов
Флаг «системный» 0 — обычный; 1 — системный
Флаг «архивный» 0 — прошедший резервное копирование; 1 — нуждающийся в резервном копировании
Флаг «ASCII/двоичный» 0 — ASCII; 1 — двоичный
Флаг произвольного доступа 0 — только последовательный доступ; 1 — произвольный доступ
Флаг «временный» 0 — обычный; 1 — удаляемый по окончании работы процесса
Флаги блокировки 0 — незаблокированный; ненулевое значение — заблокированный
Длина записи Количество байтов в записи
Позиция ключа Смещение ключа внутри каждой записи
Длина ключа Количество байтов в поле ключа
Время создания Дата и время создания файла
Время последнего доступа Дата и время последнего доступа к файлу
Время внесения последних изменений Дата и время внесения в файл последних изменений
Текущий размер Количество байтов в файле
Максимальный размер Количество байтов, до которого файл может увеличиваться

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

Флаги, представляющие собой небольшие поля или простые биты, управляют некоторыми конкретными свойствами файлов или разрешают применение файлов для каких-либо действий. Скрытые файлы, например, не обнаруживаются браузерами файлов. Флаг архивации отвечает за отслеживание операции резервного копирования файла. По данному флагу программа архивирования определяет, для каких файлов необходимо сделать резервную копию. Если данный флаг сброшен, то это говорит о том, что некоторая программа архивирования недавно подвергала файл резервному копированию. Если после резервного копирования в файл были внесены некоторые изменения, то операционная система вновь устанавливает этот флаг. Если файл имеет установленный флаг «временный», то после завершения работы создавшего его процесса этот файл автоматически удаляется.

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

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

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

Предыдущий раздел Оглавление Следующий раздел