Глава 7. Операционные системы

Файловая организация данных. Основы работы в операционной системе DOS

7.1. Файлы и каталоги

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

Правила образования имен файлов и объединения файлов в файловые системы зависят от конкретной операционной системы. Изложим эти правила на примере операционной системы MS-DOS.

Имя файла состоит из двух частей: собственно имени и расширения имени (т. е. типа файла).

Собственно имя файла включает в себя не более восьми символов.

В именах файлов запрещается использовать:

В именах файлов не запрещается использование цифр.

При задании имени файла рекомендуется:

Расширение имени может состоять не более чем из трех символов, в том числе может отсутствовать. Если расширение есть, то от основного имени оно отделяется точкой, например ris.bmp, mart.txt, doc.doc.

По имени файла можно судить о его назначении, так как для расширений установилось некоторое соглашение, фиксирующее для ОС тип обработки файлов. Расширение com (от command) или ехе (от executable) имеют файлы программ, предназначенных для исполнения по вызову пользователя; doc (от document) — файлы с документами, подготовленные в текстовом редакторе Microsoft Word; bak (от backup) — резервные копии; bas — файлы с текстами программ на языке Бейсик.

Могут ли существовать ниже перечисленные имена файлов. Если нет, попытайтесь объяснить почему.

command.com;

virus.disk;

com.txt;

t g d.doc;

kl_6_s.

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

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

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

VERA — это каталог пользователя;

Z_plata — каталог для расчета заработной платы;

TXT — каталог для текстовых файлов.

Если файлы и каталоги — это одно и тоже, их имена подчиняются одним и тем же правилам, как различать их? Дело в том, что при регистрации на диске в MS-DOS файлы записываются маленькими буквами, каталоги большими.

Каталог может содержать любое разумное число имен файлов, он также может содержать другие каталоги, называемые в этой ситуации подкаталогами. Так образуется иерархическая структура, “дерево” каталогов, “корнем” в котором является главный (корневой) каталог, “ветвями” — подкаталоги, “листьями” — имена файлов.

Корневой каталог не имеет имени, он обозначается наклонной чертой \.

Каталоги (директории, папки) более высоко уровня по отношению к каталогам более низкого уровня являются надкаталогам. Рассмотрим каталог VERA, он является надкаталогом к каталогу ТХТ и подкаталогом к каталогу USERS.

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

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

Например:

c:\USERS\VERA\qwad.exe

a:\qbasic\basic2\qbasic.exe

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

Файлы и каталоги хранятся на диске. Диски тоже имеют имена. Они обозначаются одной латинской буквой с двоеточием - A: или F:. Буквы A и B используются для обозначения гибких дисков, все остальные, начиная с C - для винчестеров и CD ROM. Диски разбиты на сектора и дорожки, в которые записываются файлы с информацией. Операция разбиения диска на сектора и дорожки называется форматированием диска.

На диске выделяется определенная область, в которой размещается специальная таблица, содержащая последовательности номеров блоков (секторов) для каждого файла. Таблица эта постоянно обновляется, а полностью стирается вместе с корневым каталогом при форматировании диска.

Часто файлы разделяют на две категории — текстовые и двоичные. Текстовые файлы предназначены для чтения человеком. Они состоят из строк символов. В текстовых файлах хранятся тексты документов, тексты программ на языках программирования и т. д. Файлы, не являющиеся текстовыми, называются двоичными. Они имеют вид, “понятный” только компьютеру, они часто структурируются таким образом, чтобы их было удобно “читать” некоторой конкретной программе.

7.2. Операционная система компьютера (назначение, состав, загрузка)

Все многообразие программ, используемых на современном компьютере, называется программным обеспечением — ПО (software). Программы, составляющие ПО, можно разделить на три группы: системное ПО, системы программирования, прикладное ПО. Две первые группы иногда называют базовым ПО. Ядром системного ПО является операционная система (ОС).

Операционная система — это часть ПО, наиболее тесно связанная с техническими средствами компьютера (hardware). Основные функции ОС:

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

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

Для общения ОС с пользователем используется специальный командный язык OC На персональных компьютерах общение происходит в режиме диалога. ОС в определенной форме выводит на экран приглашение пользователю, пользователь в ответ вводит с клавиатуры команду, предписывающую совершить определенное действие (запустить программу, вывести директории диска, уничтожить файл и пр.). ОС обеспечивает выполнение этой команды и снова возвращается к диалогу с пользователем.

Для упрощения диалога пользователя с ОС применяются так называемые диалоговые оболочки к операционной системе. Примером популярной оболочки является Norton Commander. При работе с подобной оболочкой пользователю не приходится набирать на клавиатуре команды по буквам; он выбирает их из меню в среде оболочки на экране. В последнее время на профессиональных компьютерах стала популярной операционная система Windows со встроенной графической оболочкой.

В качестве примера рассмотрим состав и функции операционной системы MS-DOS для IBM PC.

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

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

Модули ОС (io.sys и msdos.sys) загружаются в память загрузчиком операционной системы и остаются в памяти компьютера постоянно. (Файл io.sys представляет собой дополнение к BIOS, а файл msdos.sys реализует основные высокоуровневые услуги DOS).

Командный процессор DOS (command.corn) обрабатывает команды, введенные пользователем. Командный процессор находится на диске, с которого загружается операционная система. Некоторые команды пользователя (например, type, dir или copy) командный процессор выполняет сам. Такие команды называются внутренними. Для выполнения остальных (внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем и если находит ее, то загружает в память и передает ей управление. По окончании работы программы командный процессор удаляет программу из памяти и выводит сообщение о готовности к выполнению команд— приглашение DOS.

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

Драйверы устройств — это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых или нестандартное использование имеющихся устройств. Драйверы загружаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файле (config.sys). Такая схема облегчает добавление новых устройств и позволяет делать это, не затрагивая системные файлы DOS.

Загрузка DOS происходит следующим образом.

При включении электропитания компьютера (или при нажатии на клавишу Reset на корпусе компьютера, или при одновременном нажатии клавиш Ctrl, Alt и De1 на клавиатуре) начинают работать программы проверки оборудования, находящиеся в постоянной памяти компьютера. Если они находят ошибку, то выводят код ошибки на экран.

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

После того как с диска, с которого загружается ОС, прочитана программа-загрузчик ОС, эта программа считывает в память модули операционной системы (io.sys и msdos.sys) и передает им управление.

Далее с того же диска читается файл конфигурации системы (config.sys) и в соответствии с указаниями, содержащимися в этом файле, загружаются драйверы устройств и устанавливаются параметры операционной системы. Если такой файл отсутствует, то параметры устанавливаются по умолчанию.

После этого с диска, с которого загружается ОС, читается командный процессор (command.com) и ему передается управление. Командный процессор выполняет командный файл (autoexec.bat), если этот файл имеется в корневом каталоге диска, с которого загружается ОС. В этом файле указывают команды и программы, выполняемые при каждом запуске компьютера. Если такой файл не найден, то DOS запрашивает у пользователя текущую дату и время.

После выполнения этого файла процесс загрузки операционной системы заканчивается. DOS выдает приглашение, показывающее, что она готова к приему команд.

С:\USERS\ — это пример приглашения DOS.

Активная строка с приглашением DOS называется командной строкой. В ней пользователем набираются команды для выполнения.

7.3. Работа с файлами и каталогами

Итак, работа в операционной системе происходит через диалог компьютера и пользователя. Диалог основан на командном методе, т. е. пользователь в командной строке набирает команду, нажимает клавишу Enter, операционная система проверяет верно ли записана команда и приступает к ее выполнению.

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

Работа с файлами:

Создание файла с клавиатуры

copy con [путь] имя файла

Затем набираем с клавиатуры информацию, по окончанию ввода нужно нажать клавиши CTRL + Z и затем Enter

Копирование

copy [путь откуда] имя файла [путь куда]

Переименование

ren [путь] старое имя файла новое имя файла

Просмотр файла по страницам

type [путь] имя файла | more

Удаление

delete [путь] имя файла

Работа с каталогами:

Создание

md [путь] имя каталога

Удаление

rd [путь] имя каталога

Просмотр

dir [путь имя каталога]

Переход в другой каталог (ниже)

Переход в другой каталог (выше)

cd [путь] имя каталога

cd ..

Работа с дисками:

Смена текущего диска

имя диска

Форматирование диска

format имя диска

Будьте осторожны, при этом с диска стирается вся информация!

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

Разумеется, это не все команды для работы в операционной системе DOS. Есть еще команды:

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

для восстановления, удаленных файлов;

для поиска файлов по критериям (маскам);

для редактирования файлов и т. д.