Файловая система MS DOS
Информация в компьютере хранится на дисках. Считывание и запись производятся дисководами, которые обозначаются буквой латинского алфавита с двоеточием. Первый накопитель на гибком магнитном диске обозначается «А:», второй «В:». Жесткий диск обычно разбивается на несколько разделов, называемых логическими дисками, которые обозначаются как «С:», «D:», «Е:» и т.д.
Информация на дисках хранится в виде файлов.
Файлом называется поименованная область памяти на диске, в которой хранятся программы или данные.
Полное имя файла содержит собственно имя файла – от одного до восьми символов, за которым может следовать расширение.
Расширение имени начинается после точки и может либо отсутствовать, либо включает от одного до трех символов. В качестве символов в полном имени файла могут выступать: латинские буквы: A,B,...,Z, цифры 0,1, …, 9 и некоторые специальные символы «!», «@», «#», «$», «%», «^», «&», «(», «)», «-», «{», «}», «'». Заглавные и строчные буквы в имени не различаются между собой. Русские буквы в именах файлов использовать не рекомендуется, как и символы. «"», «/», «\», «[», «]», «:», «=», «+», «;», «,» с кодами меньшими 20Н.
Запрещены и не могут использоваться в качестве имен или типов файлов некоторые трехбуквенные имена, зарезервированные в MS DOS как имена устройств. К ним относятся:
AUX | имя дополнительного устройства ввода-вывода; |
CON | имя клавиатуры при вводе или дисплея при выводе; |
LPT1, ..., LPT3 | имена параллельных принтеров; |
СОМ1, ..., СОМ3 | имена последовательных адаптеров; |
PRN | имя печатающего устройства; |
NUL | имя фиктивного устройства, эмулирующего выводные операции без реального вывода. |
Расширение имени файла обычно обозначает тип файла. В MS DOS общеприняты следующие стандартные расширения:
ASM | программа на языке Ассемблера; |
BAK | копия файла, сделанная перед его изменением; |
BAS | программа на языке Бейсик; |
BAT | командный (batch) файл пакетной обработки; |
C | программа на языке СИ; |
COM | выполняемая программа; |
DAT | файл данных; |
DOC | файл документов; |
EXE | выполняемая программа; |
TXT | текстовый файл. |
Команды MS DOS могут оперировать сразу с группами файлов, для обозначения которых используют шаблоны имен файлов, называемые также глобальными или групповыми именами файлов. В шаблонах используйте символы «*» и «?». Символ «*» обозначает любое число любых символов в имени или расширении файла. Например:
*.BAS | обозначает все файлы с расширением .BAS |
POPOV.* | обозначает все файлы с именем POPOV |
*.* | обозначает все файлы с любыми именами и расширениями |
Символ «?» в шаблонах обозначает один произвольный символ или его отсутствие, если «?» находится после значащих символов.
Шаблон PETR??.TXT обозначает все файлы с расширением .ТХТ, именем, начинающимся на PETR и содержащим от 4 до 6 символов.
Важным при работе в MS DOS является понятие спецификация файла. Этот термин используется для обозначения имени файла в формате:
[имя диска:] имя файла [.тип файла].
В квадратных скобках обозначены необязательные элементы. На дисках файлы объединяются в каталоги (директории). Главный или корневой каталог на каждом диске обозначается наклонной чертой «\». Этот каталог создается автоматически при форматировании диска. В корневом каталоге могут находиться файлы и другие каталоги. Имена каталогов не содержат расширений и образуются по тем же правилам, что и имена файлов. Каждый каталог может содержать файлы и другие каталоги, называемые подкаталогами. Тот каталог, который содержит подкаталоги, называется надкаталогом или родительским каталогом. Такой способ организации информации называется иерархической файловой структурой, которая представляет из себя как бы дерево (Ошибка! Источник ссылки не найден.).
Рис. 1. Пример древовидной файловой структуры
В древовидной файловой структуре принято заглавными буквами записывать имена каталогов, а строчными — имена файлов.
При использовании иерархической структуры MS DOS необходимо указывать местоположение файлов в этой структуре. Для этого файлу дается полное имя, или полная спецификация файла.
Формат полного имени:
[имя диска:][имя каталога]\[имя подкаталога]\имя файла[.тип]
Здесь необязательные элементы указаны в скобках «[ ]».
Для некоторых файлов из приведенного выше дерева укажем их полные имена:
Имя файла | Полное имя |
doc.txt | C:\USER\TANYA\doc.txt |
basica.exe | C:\PROGRAMS\BASIC\basica.exe |
Каталогу в иерархической структуре дается полное имя каталога, которое содержит имена всех надкаталогов с указанием имени диска.
О каждом файле кроме его имени хранится также информация о его размере в байтах, о дате и времени создания.
Таким образом, с каждым файлом в DOS связываются:
1) составное имя файла;
2) дополнительные атрибуты файла;
3) дата создания или изменения файла;
4) время создания или изменения файла;
5) длина файла.
Эти характеристики файла называются атрибутами файла.
Дата создания и время создания файла при создании или обновлении файла берутся из системных часов. Для изменения показания системных часов используются команды DOS: Date и Time. Размер (size) файла указывается в байтах. У каждого файла имеются также дополнительные атрибуты файла:
R (read only) | только для чтения; |
A (archive) | архивный; |
Н (hidden) | скрытый; |
S (system) | системный. |
Файловая структура усложняется по мере создания новых каталогов. В каждый новый каталог могут быть добавлены файлы, а также новые подкаталоги. Любой файл можно найти путем перемещения по какой-либо ветви дерева, начиная от корня, или, наоборот, поднятием по ветви дерева по направлению к корню. Существуют определенные правила формирования файловой структуры:
1. Каталог или файл может входить только в один каталог.
2. На порядок следования файлов в каталоге никаких ограничений не налагается.
3. Допускается вхождение в разные каталоги файлов с одинаковыми именами.
4. Глубина вложенности каталогов не ограничивается.
При работе с каталогами используют следующую терминологию:
Текущий каталог — каталог, с которым в данный момент работает пользователь. DOS хранит информации о текущем каталоге для каждого дисковода компьютера. При запуске (включении ПК) в качестве текущего каталога устанавливается корневой каталог.
Текущий дисковод — дисковод, с которым в данный момент работает пользователь.
Рабочий каталог — текущий каталог на текущем дисководе.
Дочерний и родительский каталоги — если первый каталог входит во второй, то первый — дочерний, а второй — родительский.
Создать новый файл можно только в рабочем каталоге. Для создания файла в другом каталоге нужны специальные действия.
Доступ к файлу в иерархической структуре осуществляется с помощью маршрута. Полным маршрутом (путем) к файлу называется последовательность каталогов, ведущих от корневого каталога к этому файлу. Полный маршрут представляется перечислением имен каталогов, разделенных символов \, причем корневой каталог от его дочернего символом \ не отделяется.
Пример: \PROGRAMS\BASIC\DELO
Указание полных маршрутов на жестком диске с разветвленной файловой структурой утомительно, поэтому существуют дополнительные возможности доступа к файлам с помощью относительного маршрута. Относительный маршрут отличается от полного тем, что:
1) начинается от текущего каталога;
2) перечисление имен каталогов может идти как от корневого каталога, так и по направлению к нему;
3) для обозначения родительского каталога используется символ "..".
Пример: ..\ ..\GAMES.
С использованием маршрута полную спецификацию файла можно представить в виде:
[имя диска:] [маршрут\] имя файла.[расширение]
Если необязательные элементы отсутствуют, то действуют правила умолчания:
не задано имя диска — выбирается текущий привод;
маршрут начинается с корневого каталога — пишется полный маршрут;
маршрут начинается не с символа «\» — поиск начинается с текущего каталога;
маршрут не задан — считается, что файл находится текущем каталоге на выбранном дисководе;
расширение не задано — считается, что его нет.
Примеры:
C:\GAMES\tetris.exe — определяет местонахождение файла tetris.exe в каталоге GAMES, который находится в корневом каталоге диска С.
\commamd.com — файл command.com расположен в корневом каталоге текущего диска.
Пусть текущий каталог USER, тогда MARY\urok.doc определяет местонахождение файла urok.doc в подкаталоге MARY текущего каталога USER текущего дисковода
Формат команд MS DOS
Формат команд MS DOS имеет вид: команда [параметры], где команда — имя команды MS DOS, а параметрами, в зависимости от типа команды, могут быть:
· имя диска;
· маршрут;
· имя файла;
· ключи команд, перед которыми ставится знак «/», например /р, разделенные пробелами.