Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Имена файлов. Типы файлов



Файлы идентифицируются именами. Пользователи дают файлам символьные имена, при этом учитываются ограничения ОС как на используемые символы, так и на длину имени. В файловой системе FAT длина имен ограничивается известной схемой 8.3 (8 символов – собственно имя, 3 символа – расширение имени), а в ОС UNIX System V имя не может содержать более 14 символов. Однако пользователю удобнее работать с длинными именами, поскольку они позволяют дать файлу действительно мнемоническое название, по которому даже через большой промежуток времени можно будет вспомнить, что содержит этот файл. Поэтому современные файловые системы поддерживают длинные символьные имена файлов. Например, в файловой системе NTFS имя файла может содержать до 255 символов.

При переходе к длинным именам возникает проблема совместимости с ранее созданными приложениями, использующими короткие имена. Чтобы приложения могли обращаться к файлам в соответствии с принятыми ранее соглашениями, файловая система должна уметь предоставлять эквивалентные короткие имена (псевдонимы) файлам, имеющим длинные имена. Например, файловая система VFAT, представляющая собой существенно измененный вариант FAT, поддерживает длинные имена.

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

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

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

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

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

· информация о разрешенном доступе;

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

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

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

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

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

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

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

· признак блокировки;

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

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

· и т.д.

Каталоги могут непосредственно содержать значения характеристик файлов, как это сделано в файловой системе ОС MS DOS, или ссылаться на таблицы, содержащие эти характеристики, как это реализовано в ОС UNIX (рисунок 1.8).

Рис.1.8. Структура каталогов: а – структура записи каталога MS DOS; б – структура записи каталога ОС UNIX

Каталоги могут образовывать иерархическую структуру за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня.

Иерархия каталогов может быть деревом или сетью (рисунок 1.9). Каталоги образуют дерево, если файлу разрешено входить только в один каталог, и сеть – если файл может входить сразу в несколько каталогов. В MS DOS каталоги образуют древовидную структуру, а в ОС UNIX – сетевую. Каталог имеет символьное имя и однозначно идентифицируется составным именем, содержащим цепочку символьных имен всех каталогов, через которые проходит путь от корня до данного каталога.

Рис. 1.9. а –древовидная структура; б – сетевая структура





Дата публикования: 2015-09-17; Прочитано: 439 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...