Файловая система ОС (FS). Внешняя модель (архитектура) FS. Правила именования и пространства имен в ОС Windows. Элементы полного имени. Атрибуты файловых объектов

Файл — это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные.

Файловая система (ФС) — это часть операционной системы, включающая:

□ совокупность всех файлов на диске;

□ наборы структур данных, используемых для управления файлами, такие, на­пример, как каталоги файлов, дескрипторы файлов, таблицы распределения свободного и занятого пространства на диске;

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

Основные функ­ции в такой ФС нацелены на решение следующих задач:

□ именование файлов;

□ программный интерфейс для приложений;

□ отображения логической модели файловой системы на физическую организацию хранилища данных;

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

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

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

Специальные файлы — это фиктивные файлы, ассоциированные с устройствами ввода-вывода, которые используются для унификации механизма доступа к файлам и внешним устройствам. Специальные файлы позволяют пользователю вы­полнять операции ввода-вывода посредством обычных команд записи в файл или чтения из файла.

Иерархическая структура файловой системы.большинство файловых систем имеет иерархическую структуру, в которой уров­ни создаются за счет того, что каталог более низкого уровня может входить в ка­талог более высокого уровня. Ката­логи образуют дерево, если файлу разрешено входить только в один каталог, и сеть — если файл может входить сразу в несколько каталогов. Например, в MS-DOS и Windows каталоги образуют древовидную структуру, а в UNIX — сетевую. В древовидной структуре каждый файл являет­ся листом. Каталог самого верхнего уровня называется корневым каталогом, или корнем (root).

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

Простое, или короткое, символьное имя идентифицирует файл в пределах одного каталога. Простые имена присваивают файлам пользователи и программисты, при этом они должны учитывать ограничения ОС как на номенклатуру символов, так и на длину имени. До сравнительно недавнего времени эти границы были весьма узкими. Так, в популярной файловой системе FAT длина имен ограничивались схемой 8.3 (8 символов — собственно имя, 3 символа — расширение имени), Современные файловые системы, а также усовершенство­ванные варианты уже существовавших файловых систем, как правило, поддер­живают длинные простые символьные имена файлов. Например, в файловых сис­темах NTFS и FAT32 (имя файла может содержать до 255 символов).

В иерархических файловых системах разным файлам разрешено иметь одинаковые простые символьные имена при условии, что они принадлежат разным ката­логам. То есть здесь работает схема «много файлов — одно простое имя». Для однозначной идентификации файла в таких системах используется так называемое полное имя.

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

Относительное имя файла определяется через понятие «текущий каталог». Для каждого пользователя в каждый момент времени один из каталогов файловой системы является текущим, причем этот каталог выбирается самим пользователем по ко­манде ОС. Файловая система фиксирует имя текущего каталога, чтобы затем использовать его как дополнение к относительным именам для образования пол­ного имени файла.

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

Понятие «файл» включает не только хранимые им данные и имя, но и атрибуты. Атрибуты — это информация, описывающая свойства файла. Примеры воз­можных атрибутов файла:

Значения атрибутов файлов могут непосредственно содержаться в каталогах, как это сделано в файловой системе MS-DOS, структура записи в каталоге, содержащая простое символьное имя и атрибуты файла. Здесь буквами обозначены признаки файла: R — только для чтения, А архивный, Н — скрытый, S — системный.