Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы построения операционных систем.doc
Скачиваний:
50
Добавлен:
07.11.2018
Размер:
5.07 Mб
Скачать

2. Управление файлами

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

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

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

В данном разделе будут рассмотрены как непосредственно сами файлы, их типы и характеристики, так и функции системы управления файлами.

2.1. Файлы

Файлом называется поименованная целостная совокупность данных на внешнем носителе информации. Пользователь вычислительной системы организует информацию в файлах, вводя в них определенную логическую структуру. В соответствии с ней файл определяется как совокупность элементарных единиц информации одной природы - записей. Записи в свою очередь подразделяются на поля.

С каждым файлом в операционной системе связываются:

- составное имя файла;

- тип файла;

- атрибуты файла.

2.1.1. Имя файла

Составное (полное) имя файла представляет собой совокупность имени файла и расширения имени файла.

Имя файла - это последовательность символов, в качестве которых допускается использовать буквы латинского алфавита от А (а) до Z (z), цифры от 0 до 9, а также символы @, #, $, %, &, (, ), -, _, ~, ‘, { и }. Можно также использовать буквы национального алфавита, поддерживаемого активизированной кодовой страницей. Никаких ограничений на порядок следования символов в имени файла не налагается, а одноименные строчные и прописные буквы в ряде операционных систем (в частности, в DOS) не различаются. Возможно, легче запомнить недопустимые в имени файла символы: /, запятая, ; , +, [, ], =, ", *,?, :, ., < и >. В качестве имен файлов по вполне понятным причинам нельзя использовать имена посимвольных устройств. Длина имени файла в разных операционных системах может составлять до 8 (в MS DOS) или до 256 (в UNIX и Windows 95 или Windows NT) символов.

Имя файла - это обязательный элемент и поэтому при доступе к файлу оно должно указываться всегда.

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

Расширение имени файла является необязательным элементом и поэтому при создании файла может не задаваться. Однако это снижает информативность составного именования файла.

В командах операционной системы и программах на языках программирования составное имя файла записывается как имя файла, за которым следует расширение, отделенное от имени точкой.

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

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

Таким образом, расширение имени файла не указывается в двух случаях:

- когда оно отсутствует;

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

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

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

Таблица 2.1

Расширение

Назначение

1

2

ARC

Архив

ASM

Программа на языке Ассемблера

BAK

Предыдущая (резервная) версия файла

BAS

Программа на языке Basic

BAT

Командный файл

BIN

Двоичный файл, в том числе машинная программа

или драйвер

C

Программа на языке C

CFG

Файл, описывающий конфигурацию (параметры)

программы

CHI

Документ текстового редактора ChiWriter

COB

Программа на языке Cobol

COM

Позиционно-независимая машинная программа

CPI

Файл кодовых страниц периферийных устройств

DAT

Файл данных

DB

База данных

DBF

Файл данных с развитой организацией (dBase)

DOC

Документ, подготовленный одним из текстовых

редакторов, в частности, MicroSoft Word

DRV

Драйвер

EXE

Позиционно-зависимая машинная программа

EXT

Файл расширений

FNT

Файл со шрифтами для принтера

FOR

Программа на языке Fortran

HLP

Файл, содержащий экранный интерактивный справочник

INI

Файл, описывающий конфигурацию (параметры)

LET

Письмо

Продолжение табл. 2.1

1

2

LIB

Библиотека подпрограмм

LSP

Программа на языке Lisp

LST

Листинг программы

MAC

Макрокоманда на языке Ассемблера

MAP

Листинг компоновщика

MNU

Файл меню

MSG

Файл сообщений программы

OBJ

Объектная программа

OVG

Оверлейный файл

OVL

Оверлейный файл

OVR

Оверлейный файл

PAS

Программа на языке Pascal

PCX

Иллюстрация графического редактора PC PaintBrush

PIC

Иллюстрация

PIF

Оверлейный файл

PRN

Файл, подготовленный для вывода на принтер

PRG

Программа на языке Clipper, FoxPro

SYS

Драйвер, если имя файла отлично от IO, MSDOS и CONFIG

TMP

Временный файл

TPL

Библиотека объектных модулей Turbo Pascal -я

TPU

Объектный модуль Turbo Pascal - я

TXT

Текстовый файл

$$$

Временный файл

ZIP

Архив

Расширение СОМ (от COMmand - командный) зарезервировано для файлов, содержащих готовые к выполнению машинные программы, не требующие перемещения при загрузке их в оперативную память для выполнения независимо от адреса загрузки. Иными словами, программа инвариантна к адресу загрузки. Она может быть загружена в оперативную память и выполнена без настройки содержащихся в ней адресов по месту загрузки. Размер такой программы не может превышать одного сегмента (64 Кбайт). СОМ-программу можно назвать позиционно независимой.

Расширение ЕХЕ (от EXEcutable - выполняемый) зарезервировано для файлов, содержащих готовые к выполнению машинные программы, которые при загрузке на выполнение в оперативную память требуют настройки адресов, что увеличивает общее время выполнения программ. Такой программе предшествует заголовок, содержащий необходимую для перемещения информацию, а ее размер может быть больше 64 Кбайт. ЕХЕ-программу называют позиционно зависимой.

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

Любой файл, содержащий исполняемую программу, будем называть программным.

Расширение BAT (от BATch - командный) зарезервировано для командных файлов, т.е. текстовых файлов, содержащих программы на командном языке операционной системы.

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