Файловая система MS-DOS
Как отмечалось ранее, файловая система представляет собой часть операционной системы, управляющей размещением и доступом к файлам и каталогам на диске. С понятием файловой системы тесно связано понятие файловой структурыдиска, под которой понимают, как размещаются на диске главный(корневой) каталог, подкаталоги, файлы, операционная система, а также какие для них выделены объемы секторов, кластеров, дорожек.
При формировании файловой структуры диска операционная система MS-DOS соблюдает ряд правил:
– файл или каталог могут быть зарегистрированы с одним и тем же именем в разных каталогах множество раз, но в одном и том же каталоге – только один раз;
– порядок следования имен файлов и подкаталогов в родительском каталоге произвольный;
– файл может быть разбит на несколько частей, для которых выделяются участки дискового пространства на разных дорожках и секторах.
В операционной системе MS-DOS принята иерархическая структура организации каталогов (как показано на рисунке 7.3). На каждом логическом диске всегда имеется единственный главный (корневой) каталог. Он находится на 0-м уровне иерархической структуры и обозначается символом "\". Корневой каталог создается при форматировании диска, имеет ограниченный размер и не может быть удален средствами операционной системы. Корневой каталог занимает на логическом диске строго определенное место (рисунок 7.5). В корневой каталог могут входить другие каталоги и файлы, которые создаются командами операционной системы и могут быть удалены соответствующими командами.
Каталоги, находящиеся на 1-м, 2-м и т. д. уровнях иерархической структуры, являются по отношению к корневому каталогу подкаталогами. Это в равной степени относится к каталогам любого уровня: каталог, который входит в другой каталог, называется подкаталогом, а каталог, имеющий подкаталоги, называется родительским каталогом. Таким образом, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой стороны, подкаталогом по отношению к каталогу верхнего уровня.
Запись о файле в каталоге содержит имя и тип (расширение) файла, объем файла в байтах, дату создания, время создания и еще ряд параметров, необходимых операционной системе для организации доступа. Запись о подкаталоге нижнего уровня в родительском каталоге содержит его имя, признак <DIR>, дату и время создания.
Файл размещается на диске по кластерам, каждый из которых имеет свой номер (адрес). Кластеры, принадлежащие одному файлу, могут находиться в разных местах диска. Таким образом, файл может храниться на диске в виде отдельных фрагментов. В этом случае говорят, что файл фрагментирован. Чтобы сократить время поиска и чтения файла, необходимо, чтобы кластеры, выделенные для хранения файла, располагались на диске подряд. Для упорядочения файлов используются специальные программы, а процедура упорядочения файла получила название дефрагментации файла.
Для организации доступа к файлу операционная система должна иметь сведения о номерах кластеров, где размещается файл. Такие сведения хранятся в FAT-таблице. Рассмотрим основную идею, заложенную в основу построения и использования FAT-таблицы (рисунок 7.6).
Количество ячеек FAT-таблицы определяется количеством кластеров на диске. В каждую ячейку помещается номер кластера. В свою очередь, в каталоге, наряду с другими характеристиками файла, указан номер его первого кластера. При необходимости доступа к файлу сначала производится обращение к ячейке FAT-таблицы, адрес которой определяется записью в каталоге (по номе-
Рисунок 7.6 – Организация доступа к файлу с помощью
FAT-таблицы
ру первого кластера файла). В этой ячейке хранится номер второго кластера файла. В ячейке таблицы с адресом, соответствующим номеру второго кластера файла, хранится номер третьего кластера и т. д. Таким образом формируется цепочка кластеров, где расположен файл. В последней ячейке таблицы, завершающей данную цепочку, записывается код FFF (или FFFF), указывающий на конец цепочки (и, соответственно, на окончание файла).
При хранении данных решаются две проблемы: как сохранить данные в наиболее компактном виде и как обеспечить к ним удобный и быстрый доступ (если доступ не обеспечен, то это не хранение). Для обеспечения доступа необходимо, чтобы данные имели упорядоченную структуру, а при этом образуется "паразитная нагрузка" в виде адресных данных. Без них нельзя получить доступ к нужным элементам данных, входящих в структуру.
Поскольку адресные данные тоже имеют размер и тоже подлежат хранению, хранить данные в виде мелких единиц, таких, как байты, неудобно. Их неудобно хранить и в более крупных единицах (килобайтах, мегабайтах и т.п.). В качестве единицы хранения данных принят объект переменной длины, называемый файлом. В ПЭВМ понятие файла применяется в основном к данным, хранящимся на дисках (на магнитной ленте), поэтому файлы обычно отождествляют с участком памяти на этих носителях информации.
Под файлом будем понимать именованную область внешней памяти, выделенную для хранения массива данных.
В файлах могут храниться различные виды данных:
программы на алгоритмическом или машинном языке;
исходные данные для работы программ или результаты выполнения программ;
произвольные тексты;
графические изображения и т. д.
Обычно в отдельном файле хранят данные, относящиеся к одному типу. В этом случае тип данных определяет тип файла. Проще всего представить себе файл в виде безразмерного канцелярского досье, в которое можно по желанию добавлять содержимое или извлекать его оттуда. Поскольку в определении файла нет ограничений на размер, можно представить себе файл, имеющий 0 байтов (пустой файл), и файл, имеющий любое число байтов.
С каждым файлом связываются:
полное имя файла;
атрибуты файла;
дата создания файла;
время создания файла;
длина файла.
Полное имя файла в общем случае состоит из двух частей:
идентифицирующей — имени файла;
классифицирующей — расширения.
Расширение, определяющее тип файла, может отсутствовать. В имени файла может быть от 1 до 8 символов в DOS и от 1 до 255 символов в последних версиях Windows. Оно является обязательным элементом и должно всегда указываться при доступе к файлу. Расширение содержит от 1 до 3 символов и отделяется от имени файла символом «.» (точка). Хотя операционная система разрешает в имени файла и расширении наличие разных символов, рекомендуется использовать буквы латинского алфавита и цифры, а имя начинать обязательно с буквы. При назначении имен файлам рекомендуется образовывать их так, чтобы они отражали смысловое содержание файла. Расширение указывает тип файла, причем некоторые из расширений являются стандартными для операционной системы, например:
ЕХЕ (EXEcutable — исполняемый) — файл-программа на машинном языке, готовая к выполнению;
СОМ (COMmand) — файл-программа на машинном языке, готовая к выполнению (небольшая программа);
ВАТ (BATch — пачка, группа) — пакетный исполняемый командный файл;
SYS — системный файл;
BAS — файл-программа на языке BASIC;
PRG — файл программа на языке DBase;
ASM — файл-программа на языке ассемблер;
ТХТ — текстовый файл DOS;
DOC — текстовый файл Windows;
XLS — файл электронных таблиц Excel;
ВАК — копия файла, создаваемая при перезаписи оригинала;
ARJ — архивный файл;
ZIP — архивный файл.
Приведенный выше список расширений содержит наиболее часто встречающиеся расширения и является далеко неполным. В трансляторах, системных программах и пакетах прикладных программ применяются расширения, являющиеся стандартными для конкретного программного продукта. Применение стандартных расширений в именах файлов позволяет компьютеру автоматически выбирать нужную процедуру обработки файла по укороченному сигналу (например, нажатие клавиши Enter).
Имени файла уделяется особое внимание в определении файла. Оно фактически несет в себе адресные данные, без которых невозможно обеспечить доступ к содержимому файла.
Требование уникальности имени файла очевидно – без этого невозможно гарантировать однозначность доступа к данным. В средствах вычислительной техники требование уникальности имени обеспечивается автоматически – создать файл с полным именем, тождественным уже имеющемуся, не может ни пользователь, ни автоматика.
Атрибут — это набор классифицирующих файл признаков, определяющих способы его использования и права доступа к нему. ОС допускает задание следующих элементов в атрибуте:
R (Read only) — файл предназначен только для чтения и не может быть ни удален, ни изменен. При попытке обновить или уничтожить такой файл системными средствами будет выдано сообщение об ошибочных действиях. Атрибут устанавливается для защиты от случайного изменения или уничтожения файла;
Н (Hidden) — скрытый файл. При просмотре каталога (например, командой MS DOS – DIR) сведения о скрытом файле не выдаются;
S (System) — системный файл. Системные файлы обеспечивают работу внешних устройств ПК;
A (Archive) — еще не архивированный файл. Этот атрибут позволяет определить, был ли архивирован файл. Атрибут А присваивается каждому вновь создаваемому файлу и сбрасывается (уничтожается) при архивировании файла.
Файлу могут быть присвоены одновременно любые из перечисленных атрибутов или ни один из них.
Дата добавления: 2014-12-09; просмотров: 3519;