The design of the UNIX Operating System 67 страница



 

Типы файлов

 

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

 

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

 

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

 

Далее речь пойдет главным образом об обычных файлах.

 

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


Основы операционных систем 101

как текстовую информацию (обычно в формате ASCII), так и произвольную двоичную (бинарную) ин-формацию.

 

Текстовые файлы содержат символьные строки, которые можно распечатать, увидеть на экране или ре-дактировать обычным текстовым редактором.

 

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

 

Обычно прикладные программы, работающие с файлами, распознают тип файла по его имени в соответ-ствии с общепринятыми соглашениями. Например , файлы с расширениями .c, .pas, .txt - ASCII-файлы, файлы с расширениями .exe - выполнимые, файлы с расширениями .obj, .zip - бинарные и т. д.

 

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

 

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

 

Список атрибутов обычно хранится в структуре директорий (см. следующую лекцию) или других струк-турах, обеспечивающих доступ к данным файла.

 

Организация файлов и доступ к ним

 

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


Дата добавления: 2021-01-21; просмотров: 102; Мы поможем в написании вашей работы!

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






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