Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Выч_техника_часть1.doc
Скачиваний:
32
Добавлен:
11.02.2016
Размер:
17.17 Mб
Скачать
      1. Организация файловой системы, управление работой с файлами

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

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

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

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

        1. Имена файлов

Для упорядочения файлов каждый из них должен иметь уникальное имя. При поиске файла на диске система кроме имени файла должна "знать" и логическое имя диска, на котором этот файл расположен. Такая исчерпывающая информация о локализации файла на магнитном носителе называется спецификацией файла и имеет вид d:имя_файла.расширение Здесь d: есть логическое имя привода, состоящее из латинской буквы и двоеточия (например А:). Имя привода не нужно указывать только в том случае, когда файл или файлы, с которыми работает пользователь, размещены или подлежат размещению на текущем приводе.

Имя файла состоит из одного-восьми символов, содержание имени машине безразлично. При записи имен можно использовать :

Латинские буквы от АдоZ.

Цифры от 0до9.

Символы $ & # @ ! % ' ( ) - { } ~ `.

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

Операционная система поймет Вас независимо от того, набрано ли имя в верхнем или нижнем регистре, т.е. допустимо, например, имя вида РrImEr.PaS. В некоторых случаях (когда программа требует указывать расширение обязательно) расширение может иметь вид точки после имени файла (например, gauss.).

Ряд символов клавиатуры используется в MS DOS со специальными целями и, во избежание недоразумений, никогда не должны использоваться как часть имени или расширения. В число таких символов входят:

* + : ; " , . / \ < > | ? = [ ]

Нельзя также оставлять в имени или расширении (или между ними) пробелы: например, текст вида EX AMPL.BAS рассматривается системой как имена двух файлов EX и AMPL.BAS соответственно. Не допускается и превышение длины имени сверх указанных выше пределов - машина "обрежет" такое имя до восьми символов, и, если образовавшееся новое имя совпадет с именем уже существующего файла, может произойти разрушение информации в этом файле.

Некоторые имена файлов зарезервированы в операционной системе в качестве имен устройств (т.е. используются в командах на местах имен файлов для перенаправления потоков информации при вводе-выводе). К числу таких имен относятся:

AUXили

COM1, COM2используются при выполнении операций ввода-вывода с дополнительными устройствами (не входящими в основную конфигурацию ПЭВМ - например виртуальный диск);

CONиспользуется при вводе информации в файл непосредственно с клавиатуры или для перенаправления вывода на экран терминала;

LSTилиPRN

или LPT1,LPT2,

LPT3используются при направлении вывода информации, на принтер;

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

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