На главную

Файловая система MS-DOS


Файловая система MS-DOS

Файловая система MS-DOS.

При наличии большого числа программ и данных необходим строгий их учёт и

систематизация. Операционным системам приходится работать с различными

потоками данных, разными аппаратными и периферийными устройствами

компьютера. Организовать упорядоченное управление всеми этими объектами

позволяет файловая система.

На операционные системы персональных компьютеров наложила глубокий

отпечаток концепция файловой системы, лежащей в основе операционной системы

UNIX. В ОС UNIX подсистема ввода-вывода унифицирует способ доступа как к

файлам, так и к периферийным устройствам. Под файлом при этом понимают

набор данных на диске, терминале или каком-либо другом устройстве. Таким

образом, файловая система – это система управления данными.

Файловые системы операционных систем создают для пользователей некоторое

виртуальное представление внешних запоминающих устройств ЭВМ, позволяя

работать с ними не на низком уровне команд управления физическими

устройствами (например, обращаться к диску с учётом особенностей его

адресации), а на высоком уровне наборов и структур данных. Файловая система

скрывает от программистов картину реального расположения информации во

внешней памяти, обеспечивает независимость программ от особенностей

конкретной конфигурации ЭВМ, или, как ещё говорят, логический уровень

работы с файлами. Файловая система также обеспечивает стандартные реакции

на ошибки, возникающие при обмене данными. Пользователь, работая в

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

поименованные совокупности данных, хранимые во внешней памяти и имеющие

определённую структуру. При работе с файлами пользователю предоставляются

средства для создания новых файлов, операции по считыванию и записи

информации и т. д., не затрагивающие конкретные вопросы программирования

работы канала по пересылке данных, по управлению внешними устройствами.

Файловая структура логического диска:

Чтобы обратиться к информации на диске (находящейся в файле),

надо знать физический адрес первого сектора (№ поверхности + № до-

рожки + № сектора), общее количество кластеров, занимаемое данным файлом,

адрес следующего кластера, если размер файла больше, чем размер

одного кластера и т.д. Все это очень туманно, трудно и не нужно.

MS-DOS избавляет Пользователя от такой работы и ведет ее сама.

Для обеспечения доступа к файлам - файловая система MS-DOS организует

и поддерживает на логическом диске определенную файловую структуру.

Одно из понятий файловой системы MS-DOS - логический диск.

Логические диски:

В некотором приближении можно считать, что, "с точки зрения" MS-DOS,

каждый логический диск это отдельный магнитный диск.

Каждый логический диск имеет свое уникальное имя. В качестве имени

логического диска используются буквы английского алфавита от A до Z

(включительно). Количество логических дисков, таким образом, не более 26.

Буквы A и B - отведены строго под имеющиеся в IBM PC FDD. Начиная с буквы C

именуются логические диски (разделы) HDD. В случае, если данный IBM PC

имеет только один FDD, буква B пропускается. Только логические диски A и C

могут быть системными.

[pic]Элементы файловой структуры:

- стартовый сектор (сектор начальной загрузки, Boot-сектор),

- таблица размещения файлов (FAT - File Allocation Table),

- корневой каталог (Root-Directory),

- область данных (оставшееся свободным дисковое пространство)

Эти элементы создаются специальной программами (в среде MS-DOS) в процессе

инициализации диска.

Рис. 1

[pic]

[pic]Стартовый сектор (сектор начальной загрузки, Boot-сектор):

Здесь записана информация, необходимая MS-DOS для работы с диском:

- идентификатор OS (если диск системный),

- размер сектора диска,

- кол-во секторов в кластере,

- кол-во резервных секторов в начале диска,

- кол-во копий FAT на диске (стандарт - две),

- кол-во элементов в каталоге,

- кол-во секторов на диске,

- тип формата диска,

- количество секторов в FAT,

- кол-во секторов на дорожку,

- кол-во поверхностей,

- блок начальной загрузки OS,

За стартовым сектором располагается FAT.

[pic]FAT (таблица размещения файлов):

Область данных диска представлена в MS-DOS как последовательность

пронумерованных кластеров. FAT - это массив элементов, адресующих кластеры

области данных диска. Каждому кластеру области данных соответствует один

элемент FAT. Элементы FAT служат в качестве цепочки ссылок на кластеры

файла в области данных.

FAT - крайне важный элемент Файловой Структуры!

Нарушения в FAT могут привести к ПОЛНОЙ или ЧАСТИЧНОЙ потере информации на

ВСЕМ логическом диске! Именно поэтому, на диске хранится две копии FAT.

Существуют специальные программы, которые контролируют состояние FAT и

исправляют нарушения.

[pic]Корневой Каталог:

Это определенная область Диска, создаваемая в процессе инициализации Диска,

где содержится информация о файлах и каталогах, хранящихся на Диске.

Корневой Каталог ВСЕГДА существует на отформатированном Диске! На одном

Диске ВСЕГДА бывает только ОДИН Корневой Каталог. Размер Корневого Каталога

для данного Диска - величина фиксированная, поэтому максимальное кол-во

"привязанных" к нему файлов и других (дочерних) каталогов (ПодКаталогов) -

строго определенное.

[pic]Каталоги (ПодКаталоги):

Каталог - это определенное место на диске (в области данных диска), где

содержится информация о файлах и ПодКаталогах, "привязанных" к данному

Каталогу. MS-DOS поддерживает иерархическую структуру каталогов

(древообразную).

Рис. 2

[pic]

В отличие от Корневого Каталога, остальные каталоги (ПодКаталоги) создаются

с помощью специальных команд MS-DOS (внутренних). Основная цель такой

структуры каталогов - организация эффективного хранения большого кол-ва

файлов на диске.

КАЖДЫЙ Каталог (кроме корневого) имеет "родителя", т.е. другой Каталог, к

которому "привязан" данный Каталог. MS-DOS рассматривает каждый Каталог

(кроме корневого), как файл. Термин "привязан" иногда заменяется термином

"зарегистрирован".

[pic]Файлы:

Файл - это поименованная область памяти на каком-либо физическом носителе,

предназначенная для хранения информации.

[pic]Файл ВСЕГДА "привязан" к какому-либо Каталогу (в том числе, может быть

"привязан" и к корневому каталогу).

Рис. 3

[pic]

Идентификация Логических Дисков, Каталогов и Файлов:

Идентификация Логических дисков, Каталогов, Файлов осуществляется на базе

имен.

[pic] ВНИМАНИЕ!

Файловая система MS-DOS НЕ допускает, чтобы были Логические Диски,

Каталоги, Файлы с одинаковыми ИДЕНТИФИКАТОРАМИ!

В качестве имени логического диска используется одна из букв латинского

алфавита (A..Z).

Каждый Файл или Каталог (кроме корневого) имеет ПОЛНОЕ имя.

[pic]ПОЛНОЕ Имя Файла (Каталога), кроме корневого, состоит из следующих

частей (рис.4):

- имя логического диска (A..Z),

- символ-разделитель (двоеточие) “:”,

- символ, идентифицирующий корневой каталог - "\" (Слэш),

- перечень “родительских” каталогов (разделенных символом "\"),

- собственно имя файла (каталога),

Собственно имя файла (каталога) состоит из:

- имя,

- символ-разделитель (точка) “.”,

- расширение имени файла

“Имя логического диска ”+” двоеточие ”+” идентификатор корневого каталога

”+” весь перечень имен родительских каталогов” = маршрут доступа к файлу

(каталогу).

Максимальное кол-во символов в ПОЛНОМ имени файла = 78,

Максимальное кол-во символов в имени файла = 8,

Максимальное кол-во символов в расширении имени файла = 3,

Расширение НЕ обязательно, т.е. может и НЕ присутствовать (в этом случае

точка тоже отсутствует).

Рис. 4

[pic]

Таким образом, размер собственно имени файла НЕ превышает 12 символов!

В ПОЛНОМ имени файла разрешается использовать только следующие символы: A-Z

0-9 $ & # `~ ( ) - % ! _ ^

В ПОЛНОМ имени файла запрещается использовать все остальные

символы!

ЗАПРЕЩАЕТСЯ В ПОЛНОМ имени файла использовать ПРОБЕЛ!

Примеры допустимых имен файлов: Format.com, Read.me, MyFyle.txt, 28-03-

96.doc, 123.45

Примеры НЕ допустимых имен файлов:

123456789.txt, aa?.doc, 35*.? It.F.doc, .txt

Использование расширений:

Файлы, хранящиеся на диске, с точки зрения файловой системы MS-DOS, которая

выступает в роли заведующего складом (ничего не понимающего в устройстве и

назначении различных вещей, хранящихся на складе), вообще говоря,

представляют собой “некоторое сборище информации”. На самом деле файлы, в

зависимости от информации, которая там хранится, могут иметь различное

назначение: данные, программы, драйверы, настроечные файлы и т.д.

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

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

программы, драйверы и т.д.).

В MS-DOS есть перечень предопределенных (и наиболее часто встречающихся)

расширений файлов. В таблице приведен их НЕ полный перечень.

|Расширение |Назначение файла |

|EXE |Программы, созданные программистами, с |

|COM |помощью специальных языков программирования |

|BAT |Программы, созданные Пользователями, с |

| |помощью редакторов текстов |

|SYS |Драйверы устройств |

|TXT |ASCII-файл (текстовый) |

|DOC |Файл-документ (чаще всего ASCII-файл, но |

| |может быть и другого формата) |

|PAS |Тексты программ на Pascal |

|ASM |Тексты программ на Ассемблере |

|BMP |Графические образы |

|GIF | |

|PCX | |

|INI |Файлы настроек и конфигураций |

|CFG | |

Общие команды MS DOS

Общие команды распознаются и выполняются командным процессором command.com.

Команды вводятся с клавиатуры, их ввод завершается нажатием клавиши

().

Общие команды DOS делятся на группы:

Команды работы с дисками;

Команды работы с файлами;

Команды работы с каталогами;

Команды управления системой.

Типовая структура команды выглядит следующим образом:

(( ((

Параметры (аргументы) указывают на те объекты, над которыми совершаются

операции, ключи уточняют действие команды. Признак ключа (переключателя) –

наличие косой линии «/». Квадратные скобки указывают на возможность

отсутствия фрагмента.

DIR

Команда работы с каталогами; выводит на экран список директориев и файлов,

находящихся внутри текущего директория. Если использовать команду DIR без

параметров и переключателей, она выводит имена файлов (директориев), их

расширения, размеры (в байтах), дату и время создания, их число, общий

размер и размер свободного дискового пространства.

Полный синтаксис таков:

DIR [диск:] [путь] [имя_файла] [/P] [/W] [/A[[:]атрибуты]]

[/O[[:]порядок_сортировки]] […]

|Параметры | |

|[диск:][путь] |указывают дисковод и каталог, оглавление которого |

| |нужно просмотреть; |

|[имя_файла] |Указывают файл или группу файлов, список которых |

| |необходимо получить. |

|В имени файла могут быть использованы символы-заместители: |

|? |Заменяет один произвольный символ в имени файла; |

|* |Заменяет произвольное число произвольных символов. |

|Ключи: | |

|/P |выводит информацию, пока экран не заполнится, для |

| |получения следующих экранов надо нажимать любую |

| |клавишу; |

|/W |выводит информацию в сокращенном виде, только имена |

| |файлов и директориев (в 5 столбцов); |

|/A[[:] атрибуты]|выводит информацию тех директориев и файлов, атрибуты |

| |которых указаны. |

|Вот некоторые атрибуты: |

|Н |скрытые файлы; |

|-Н |все файлы, кроме скрытых; |

|S |системные файлы; |

|-S |все файлы, кроме системных; |

|D |директории; |

|-D |только файлы; |

|R |файлы только для чтения. |

|Параметр | |

|/O[[:] порядок_сортировки] |

управляет порядком сортировки файлов в выдаваемом на экран списке. Без

этого параметра имена файлов и директориев выдаются в алфавитном порядке.

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

директориев в порядке, обратном алфавитному, в алфавитном или обратном

порядке по именам расширений, в порядке возрастания или убывания даты и

времени последнего изменения содержимого файла или директория, в порядке

возрастания или убывания их размеров.

Еще несколько команд той же группы (только имена):

|MKDIR (MD) |Создание нового директория; |

|CHDIR (CD) |Переход в другой директорий. |

| DEL (ERASE)| |

|Команда работы с файлами; удаляет файлы. |

|Синтаксис: | |

|DEL [диск:] [путь][/P] |

|FORMAT диск: [/ |FORMAT диск: [/ |

|[диск:] [путь] |

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

имени используются символы-заместители.

Ключ /P вызывает запрос подтверждения для каждого удаляемого файла.

COPY

Команда работы с файлами; копирует один или более файлов в указанное место,

а также может использоваться для слияния файлов.

Синтаксис:

COPY [/Y|/-Y] [A|/B] [A|/B] [+ файл-источник [/A|/B] [+ …]]

[файл-результат [/A|/B]] [/V]

Параметры состоят из обозначения дисковода, директория и имени файла.

| |Указывает местоположение и имя файла, содержимое |

| |которого необходимо копировать. |

||Указывает местоположение и имя файла, в который нужно |

| |поместить скопированную информацию. |

|Ключи: | |

|/Y |Указывает, что команда не должна запрашивать |

| |подтверждения при замене существующих файлов; |

|/V |Проверка того, что новые файлы записаны правильно. |

Еще команда той же группы:

RENAME (REN) – переименование файла или группы файлов;

Примерами команд управления системой служат (приводятся только имена):

COMMAND – запуск командного процессора;

EXIT – выход из командного процессора.

Дополнительные команды-утилиты

Помимо команд, распознаваемых и выполняемых командным процессором, в

операционной системе имеется большое число утилит-команд, реализованных в

виде отдельных программ. В качестве примера рассмотрим утилиту

форматирования магнитных дисков.

FORMAT – форматирует диск для использования в MS DOS.

Утилита FORMAT создает пустой директорий и таблицы FAT на диске, а также

проверяет наличие испорченных областей на диске. Может уничтожить все

данные на диске.

Синтаксис:

FORMAT диск: [/V[:метка]] [/Q] [/U] [/F: размер][/B|/S] [/C]

FORMAT диск: [/V[:метка]] [/Q] [/U] [/T:дорожек/N:секторов] [/B|/S] [/C]

FORMAT диск: [/V[:метка]] [/Q] [/U] [/I] [/4] [/B|S] [/C]

FORMAT диск: [/Q] [/V] [/l] [/4] [/8] [/B|/S] [/C]

|Параметр | |

|Диск: |Обозначает форматируемый диск (это единственный |

| |обязательный параметр утилиты). |

|Ключи | |

|/V:метка |Указывает метку диска, используется редко: |

|/Q |Указывает, что производится «быстрое» форматирование, |

| |т.е. проверку испорченных областей проводить не надо: |

|/U |Указывает, что «восстанавливать» информацию до |

| |форматирования не потребуется: |

|/F: размер |Указывает емкость дискеты: |

|/S |Копирование на дискету файлов операционной системы |

| |IO.SYS, |

| |MSDOS.SYS и COMMAND/COM, что делает ее загрузочной: |

|/T:дорожек |Указывает число дорожек на дискете: |

|/N: секторов |задает число секторов на дискете. |

DISKCOPY

Команда работы с дисками (гибкими): копирует содержимое флоппи-диска в

одном дисководе на диск в другом. Ее синтаксис таков

DISKCOPY [dl:] [d2:] [/l]

Здесь первые два объекта в квадратных скобках – параметры, третий – ключ.

Примеры.

|DISKCOPY A: B: |Скопировать дискету в дисководе А на дискету в |

| |дисководе В; |

|DISKCOPY A: |Скопировать дискету в дисководе А на дискету в текущем|

| |дисководе; |

|DISKCOPY A: B: |Скопировать только первую сторону дискеты. |

|/l | |

Еще несколько команд той же группы (только имена; параметры и ключи можно

найти в справочниках):

|DISKCOMP |- сравнение содержимого двух дискет (с целью |

| |определить, совпадает ли оно); |

|CHKDSK |- проверка целостности файловой структуры на диске, |

| |коррекция ее ошибок; |

|RECOVER |- восстановление (насколько возможно) информации на |

| |дефектном диске. |

Большое количество утилит MS DOS описано в руководстве по этой системе.

Важное значение имеют также драйверы, особенно расширенной оперативной

памяти, входящие в состав ОС и позволяющие использовать более 640 КБайт

памяти.

Особую роль в системе играют файлы CONFIG.SYS и AUTOEXEC.BAT, читаемые при

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

и резидентные программы, а также дополнительные команды, выполняемые при

загрузке системы.

CONFIG.SYS

Выполняется до загрузки командного процессора и содержит вызовы SYS-

драйверов. Загружаемые драйверы устанавливаются командой DEVICE, после

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

подключения драйвера мыши MOUSE.SYS можно задать команду:

DEVICE=C:\DOS\MOUSE.COM .

Для эффективной работы с различными типами микропроцессоров компьютера

(80286, 80386, 80486, Pentium) и размеров оперативной памяти используют

специальные драйверы:

DEVISE+C:\DOS\HIMEM.SYS

DEVISE+C:\DOS\EMM386.EXE NOEMS

DEVISE+C:\DOS\EMM486.EXE.

Кроме загрузки внешних драйверов, CONFIG.SYS загружает свои (внутренние)

команды.

Если на компьютере отсутствует кэш жесткого диска (т.е. буферная область

ОЗУ, где сохраняется содержание блоков диска), то для ускорения работы с

диском вводят команду BUFFERS. Буфер – это часть оперативной памяти

размеров 532 байт.

Пример:

BUFFER+20 .

С помощью команды FILES можно указать число файлов, которые могут быть

одновременно использованы системой и программами.

Использованная литература:

1. Информатика: Учеб. пособие для студ. пед. вузов/ А.В.Могилев, Н.И.Пак,

Е.К.Хённер; Под ред. Е.К.Хённера. – М., 1999. – 816 с.

2. Реферат «Операционная система MS-DOS».

Реферат написан с использованием следующей литературы:

1. Справочное Руководство по IBM PC. Методические материалы. Часть

2. ТПП “СФЕРА”. М. 1991 г.

2. Савельев А.Я., Сазонов Б.А., Лукьянов С.Э. "Персональный

компьютер для всех". Книга 1. М., ВЫСШАЯ ШКОЛА, 1991 г.

3. Брябрин В.М. “Программное обеспечение персональных ЭВМ”. М.

“НАУКА”, 1990 г.

4. Фигурнов В.Э. “IBM PC для Пользователя” г. Уфа, НПО “Информатика

и Компьютеры”, 1993 г.

© 2010