Командный процессор dos это
MS DOS -- первая операционная система для персональных компьютеров, которая получила широкое распространение. Со временем она была практически вытеснена новыми, современными операционными системами, типа Windows и Linux, но в ряде случаев MS DOS остается удобной и единственно возможной для работы на ЭВМ (устаревшая техника, давно написанное программное обеспечение и т. п.)
Работа пользователей с операционной системой DOS осуществляется с помощью командной строки, ведь собственный графический интерфейс у нее отсутствует. Предпринималось множество попыток упростить общение с системой и самое удачное решение предложил Питер Нортон (Pеter Norton). У многих пользователей работа в операционной системе DOS ассоциируется именно с его программой -- Norton Commander. Оболочка NC скрывает от пользователя множество неудобств, возникающих при работе с файловой системой MS DOS, например, такие, как необходимость набирать команды из командной строки. Простота и удобство в использовании -- вот что делает оболочки типа NC популярными и в наше время (к ним можно отнести QDos, PathMinder, XTree, Dos Navigator, Volkov Commander и др.). Принципиально отличаются от них графические оболочки Windows 3.1 и Windows 3.11. В них применяется концепция так называемых "окон", которые можно открывать, перемещать по экрану и закрывать.
Так как MS DOS была создана довольно давно (известно, как стремительно развиваются и устаревают компьютеры и, как следствие, программы для них), она совершенно не соответствует требованиям, предъявляемым к современным операционным системам. Она не может напрямую использовать большие объемы памяти, устанавливаемые в современные ЭВМ. В файловой системе используются только короткие имена файлов (8 символов в имени и 3 в расширении), плохо поддерживаются разные устройства типа звуковых карт, видео-ускорителей и т. д.
В MS DOS совершенно не реализована мультизадачность, т. е. она не может естественным образом выполнять несколько задач (работающих программ) одновременно. Поэтому она не может использоваться в качестве основной операционной системы для полноценной многопользовательской работы в сети. MS DOS не имеет никаких средств контроля и защиты от несанкционированных действий программ и пользователя, что привело к появлению огромного количества так называемых вирусов.
Драйверы устройств -- это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых или нестандартное использование имеющихся устройств. Например, с помощью драйвера DOS ramdrive.sys возможна работа с "электронным диском", т. е. частью памяти компьютера, с которой можно работать так же, как с диском. Драйверы помещаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файле CONFIG.SYS. Такая схема облегчает добавление новых устройств и позволяет делать это, не затрагивая системные файлы DOS.
Наряду с файловой системой DOS обеспечивает операционную среду для прикладных программ. Первый компонент DOS с которым сталкивается пользователь, - это командный процессор. Эта часть DOS берет на себя обработку вводимых пользователем команд и запуск прикладных программ.
В первый момент после включения питания "интеллектуальность" IBM PC невысока: возможно и имеется большой потенциал, но способностей хоть как-то реализовать его немного. В постоянной памяти ЭВМ хранятся программы тестирования компонентов системы - POST (Power=On Self=Test - самопроверка при включении) и установки в начальное состояние устройств ввода-вывода. Остальная часть записанной в ПЗУ базовой системы ввода-вывода BIOS (Basic Input Output System) предоставляет программисту, работающему с языком ассемблера, набор средств, которые помогают ему обращаться к аппаратным средствам, не беспокоясь о том, как технически они реализованы. Но этого не достаточно, чтобы обеспечить среду для выполнения серьезных прикладных программ.
Последнее является функцией DOS. После установки ЭВМ в начальное состояние программа POST выполныет загрузку DOS с диска или дискеты в оперативную память. Этот процесс называется загрузкой системы. Первое, что делает DOS, - загружает минимальную программу, необходимую для загрузки остальной части DOS. По окончании процесса загрузки на дисплей выводтися название операционной системы и указание на авторские права. Помимо всего прочего в названии указан номер соответствующей версии операционной системы. Иногда этот номер играет важную роль, так как каждая новая версия означает дополнительные функциональные возможности операционной системы. После операции загрузки система готова к приему команд от оператора (за исключением специального случая, о котором будет сказано ниже). На этом этапе управление передается командному процессору - DOS произвела загрузку в память командного процессора, файловой системы и других служебных программ, и все они готовы выполнять свои функции. Передача управления командному процессору индицируется им следующим запросом к оператору
Этот запрос содержит двоякий смысл. Символ ">" означает готовность командного процессора к приему команды. Префикс "A" указывает на выбранный по умолчанию дисковод с гибким диском. Так как DOS может обрабатывать файлы, расположенные только на каком-то одном диске, то в случае одновременной работы с несколькими дисками или дискетами пользователь должен указать, к какому из дисководов следует обратиться системе. В персональной ЭВМ дисководы обозначаются буквами латинского алфавита. У вычислительной системы с двумя накопителями на гибких дисках имеется дисковод A: и дисковод B:. Жесткий диск обычно обозначается C: (После наименования дисковода следует двоеточие.) Обычно файлы, используемые системой DOS, считываются с дисковода, выбранного системой по умолчанию, если только оператор не изменит этот порядок. Для того чтобы считать файл с выбранного по умолчанию дисковода, системе требуется только имя этого файла. Для считывания файла с любого другого дисковода нужно кроме имени файла указать DOS наименование дисковода.
Только в ответ на команды, которые поступают от пользователя DOS выполняет какие-то действия. Все команды, относящиеся к DOS, вводятся в ответ на запрос с ее стороны, индицируемый символом ">". Пользователь вводит имя нужной ему команды, после чего поступившая заявка обрабатывается командным процессором. Как он обрабатывает эту заявку, зависит от команды, которую ввел пользователь. Имеются встроенные, или резидентные команды, которые всегда доступны. Либо команда может инициировать нерезидентное, или транзитное выполнение. Для выполнения таких команд должен существовать определенный файл на диске.
Встроенные команды обеспечивают поддержку файловой системы. Они сделаны резидентными в DOS, поскольку часто используются при работе с данными, хранящимися на дисках. После того, как пользователь ввел команду, интерпретатор командных строк передает управление соответствующей программе DOS. Программа реализует свою функцию, соответствующую спецификации введенной команды, затем возвращает управление DOS. На рис.5.1 приведены резидентные команды дисковой операционной системы.
Примером резидентной команды может служить команда DIR, которая выводит на дисплей справочник дискеты. На рис.5.2 показаны выходные данные, полученные в результате выполнения команды чтения каталога. Обратите внимание, что в справочнике дискеты для каждого записанного на ней файла уазываются его имя и тип, а также длина в байтах, дата и время его создания. Так как для загрузки любой программы DOS необходимо выполнить команду чтения каталога, то эта команда являеися встроенной.
Если пользователь введет нерезидентную команду, то командный процессор попытается загрузить ее с диска или дискеты. В этом случае он выступает в роли загрузчика программы. Предполагая, что имя файла совпадает с именем команды, интерпретатор просматривает справочник в поисках такого файла, а когда находит, загружает его в память. Затем интерпретатор передает управление загруженной программе, которая теперь может реализовывать свои функции.
Рассмотрим теперь пример вызова программы. Хорошей иллюстрацией здесь может служить ассемблер. Чтобы вызвать ассемблер, нужно ввести команду
Каталог дискеты содержит файл с именем ASM.EXE. Это и есть ассемблер. После ввода команды ASM, он просматривает дискету в дисководе A: (выбранном по умолчанию). Найдя файл с именем ASM.EXE, командный процессор загружает и передает управление ассемблеру. Теперь вычислительная система находится под управлением ассемблера. При благополучном завершении трансляции ассемблер вернет управление командному процессору. Заметьте, что файл, содержащий ассемблер - это файл типа .EXE, поэтому он может быть загружен командным процессором. Если ассемблер находится на дискете, установленной в дисководе A:, то пользователь может обратиться к другому дисководу следующим образом:
Префикс B: указывает DOS, что файл находится на дискете в дисководе B:. Файл полностью определяется не только указанием его имени, но и дисковода, с которого он будет считан. Одного имени файла достаточно только при считывании файла с дисковода, выбранного по умолчанию. Для того чтобы оттранслировать файл, расположенный на носителе в дисководе B: с помощью ассемблера, который находится на дискете в дисководе A:, нужно ввести следующую команду:
В этой команде одновременно задаются программы ASM, считываемые с дисковода, который выбран по умолчанию, и исходный файл FILE.ASM, считываемый с дисковода B:.
Это можно сделать и другим способом: задать команду B:, которая предписывает DOS сделать дисководом, выбираемым по умолчанию, дисковод B:.
A>B:
B>A:ASM FILE.ASM
Заметьте, что после этого запрос со стороны системы меняется на B>. Приведенная в этом примере команда по своему действию полностью идентична команде из предыдущего примера.
В системе допускается специальный файл с именем AUTOEXEC.BAT. Если такой файл имеется на диске, то сразу же после своей загрузки DOS обращается к нему, передавая управление командам, составляющим пакет команд этого файла. Это позволяет автоматически загружать с диска нужную пользователю программу. Предположим, что вы написали прикладную программу, использующую DOS. (При этом говорят, что программа была написана с "привязкой к DOS".) В случае создания файла AUTOEXEC.BAT, инициирующего выполнение прикладной программы, оператору, работающему с этой прикладной программой, совершенно не нужно будет знать, как работает интерпретатор командных строк. Он знает, что управление осуществляет программа и это главное.
Функционирование компьютера обеспечивается не только аппаратными средствами, Но и набором различных программ, называемым программным обеспечением ( ПО ).
Программное обеспечение: прикладное ПО, системы программирования, системное ПО.
Прикладное программное обеспечение предназначено для решения определенных задач пользователя. К ним, например, относятся текстовые и табличные процессоры, СУБД, игры, обучающие программы, различные графические редакторы и т.д.
Системы программирования предназначены для создания программного обеспечения. К нему относятся разнообразные языки и среды программирования. Например: Basic, Pascal, Delphi.
Системное ПО является основным. Без него невозможно взаимодействие ни с одним устройством компьютера. Ядром системного программного обеспечения являются операционные системы ( ОС ). Операционные системы – это набор программ, распределяющих ресурсы компьютерной системы и организующих работу других программ.
- Обеспечение согласованного выполнения всех процессов в компьютере.
- Организация хранения информации во внешней памяти, обмен с устройствами ввода-вывода.
- Реакция на ошибки и аварийные ситуации.
- Осуществление диалога с пользователем.
Операционная система MS-DOS.
Операционная система MS-DOS (Microsoft Disk Operating System) была разработана фирмой Microsoft для компьютеров IBM в начале 80-х годов.
Основные составные части DOS.
Базовая система ввода-вывода – BIOS. Находится в постоянной памяти (ПЗУ). Ее назначение состоит в выполнении услуг, связанных с осуществлением ввода-вывода, тестированием компьютера и вызовом загрузчика ОС.
Блок начальной загрузки - Boot Record. Эта программа находится в первом секторе диска. Функция этой программы заключается в считывании в память двух модулей ОС.
Модуль расширения BIOS - io.sys. Дополняет и расширяет возможности BIOS.
Основной модуль ОС – msdos.sys. Модуль обработки системных вызовов и или прерываний работы процессора. Реализует основные высокоуровневые услуги DOS.
Файл конфигурации – config.sys. Файл установки текущей конфигурации оборудования компьютера и режимов его работы. Это текстовый файл, в нем содержатся указания, какие драйверы внешних устройств нужно загрузить в ОП и как загрузить их в DOS.
Настройка на пользователя – autoexec.bat. Это командный файл, который ОС ищет при запуске, и в котором записываются команды, осуществляющие настройку ОС, удобное для работы окружение.
Драйверы устройств. Это специальные программы, которые обеспечивают управление работой устройств, согласование информационного обмена с другими устройствами и настройку некоторых параметров устройств.
Программы, входящие в состав ОС, находятся на жестком диске. В момент включения компьютера они загружаются в оперативную память и где и находятся в течение всего времени работы.
Основные понятия.
Каждое из устройств внешней памяти компьютера имеет свое имя. с: - имя жесткого диска; а: - имя гибкого диска; con - клавиатура и экран; prn – логическое имя принтера и т.д.
Все программы и данные хранятся во внешней памяти компьютера в виде файлов.
Файл – это определенное количество информации (программа или данные), имеющее имя и хранящееся в долговременной (внешней) памяти компьютера.
Имя файла состоит из двух частей, разделенных точкой: собственно имя и расширение. Собственно имя файлу дает пользователь, а тип файла обычно задается программой автоматически при его создании.
В различных ОС существуют различные форматы имен файлов. В ОC MS-DOS собственно имя должно содержать не более 8 букв латинского алфавита, цифр и некоторых специальных знаков, а расширение состоит из трех латинских букв. Например: proba.txt.
Типы файлов и расширений.
Тип файла | Расширения |
Программы | exe, com |
Текстовые файлы | txt, doc… |
Графические файлы | bmp, gif, jpg, … |
Звуковые файлы | wav, mid… |
Видеофайлы | аvi, mov… |
Программы на языках программирования | bas, pas, … |
Файловая система.
На каждом носителе информации может храниться большое количество файлов. Порядок хранения файлов на диске определяется используемой файловой системой. Файловая система – это система хранения файлов и организации каталогов.
Для дисков с небольшим количеством файлов может использоваться одноуровневая файловая система, когда каталог – линейная последовательность имен файлов.
Если на диске хранятся сотни и тысячи файлов, то для удобства поиска используется многоуровневая иерархическая система, которая имеет древовидную структуру.
Путь к файлу (маршрут). В маршрут входят записанные через разделитель “\” логическое имя диска и последовательность имен, вложенных друг в друга каталогов. В последнем каталоге этой записи содержится нужный файл.
Маршрут – последовательность каталогов, ведущая к нужному файлу. Виды: абсолютный (начинается с корневого, включая его), относительный (начинается от текущего, не включая его).
Например: а:\ АСТРА \ МАССА \ звезда.doc – абсолютный маршрут; МАССА \ звезда.doc – относительный маршрут.
Для обращения к группе файлов используются специальные символы: ? (в данной позиции может быть 1 символ, а может и не быть), * (в данной позиции и справа от нее может находится любое количество любых символов). Запись, в которой есть “?” или “*” называется шаблоном или маской. Примеры: a?.txt, a*.txt, books.*, *.*
Загрузка операционной системы MS-DОС.
Первую команду компьютер получает из ПЗУ. ПЗУ – микросхема, расположенная на материнской плате, питается от батарейки и поэтому энергонезависима. В ПЗУ находится программа тестирования компьютера BIOS. В случае обнаружения неисправности какого-либо устройства BIOS сообщает об этом. Если все устройства компьютера готовы к работе, BIOS заканчивает свою работу и дает команду загрузить с жесткого диска специальную программу – загрузчик операционной системы. Эта программа находится в загрузочном секторе жесткого диска или на системной дискете. Происходит поочередное обращение к имеющимся в компьютере дискам. Далее в ОЗУ считывается операционная система. После окончания загрузки ОС управление передается командному процессору и на экране появляется графический интерфейс. Теперь всей работой компьютера управляет ОС. Если системные диски в компьютере отсутствуют, то загрузка ОС прекращается и компьютер “зависает”.
Основные команды MS-DOS работы с файлами и каталогами.
Команды работы с каталогами.
dir – просмотр содержимого каталога.
Общий вид: dir [диск] [маршрут] [имя файла] [/p] [/w]. Пример: dir а: - просмотр корневого каталога диска а:. Если каталог содержит много файлов и они не помещаются на экране, то используют ключи: /p – постраничный вывод на экран (dir c: \ windows / p), /w – вывод без дополнительной информации о файлах. Для обозначения группы файлов используют шаблон или маску. Например: dir *.txt – на экране увидим информацию о текстовых файлах текущего каталога.
cd – смена каталога.
Общий вид: cd [диск] маршрут
md – создание каталога.
Общий вид: md [диск] маршрут
rd – удаление пустого каталога.
Общий вид: rd [диск] маршрут
tree – просмотр “дерева” каталогов.
Общий вид: tree [маршрут]
Команды работы с файлами.
copy con – создание текстового файла.
Общий вид: copy con имя файла.
Пример: copy con n.txt ( ENTER)
Я учусь в выпускном классе (CTRL+Z, ENTER)
copy – команда копирования файла ( группы файлов ).
Общий вид: copy [диск] [маршрут] [имя файла] [диск] [маршрут] [имя файла]
Пример: copy n.txt а:\
del – удаление файла.
Общий вид: del [диск] [маршрут] имя файла.
Пример: del n.txt.
move – команда перемещения файла ( группы файлов ).
Общий вид: copy [диск] [маршрут] [имя файла] [диск] [маршрут]
Пример: move n.txt а:\
type – вывод содержимого файла на экран.
Общий вид: type [диск] [маршрут] имя файла.
ren – переименование файла.
Общий вид: ren [диск] [маршрут] имя файла старое имя файла новое.
Пример: ren а:\ n.txt m.doc
Конкатенация.
Общий вид: copy f1 + f2 + … + fn f
Пример: 1. copy n.txt + m.txt a.txt; 2. copy *.doc b.txt
Печать файла.
Общий вид: copy [диск] [маршрут] имя файла prn
Режим работы экрана, клавиатуры.
prompt – изменение вида приглашения.
Prompt $p$g – восстановление обычного вида приглашения.
Mode con: cols=40 – переход в режим 40 колонок на экране. Con – имя стандартного устройства ввода-вывода, т.е. клавиатуры и дисплея.
Mode con: cols=80 – возврат к обычному представлению.
Практическая работа.
Задание 1.
1. На диске а:\ создайте “дерево” каталогов
2. В каталоге ASTRA создайте файлы: info1.txt, содержание: “Свет, идущий от звезды, проходит долгий путь”; info2.txt, содержание: “У каждой звезды своя масса”; info3.txt, содержание: ”Солнце – желтая звезда”.
3. Скопируйте все файлы из каталога ASTRA в каталог DOCUMENT под тем же именем.
4. Скопируйте файл info3.txt из каталога ASTRA в каталог COLOR под именем solnze.doc.
5. Произведите конкатенацию всех файлов каталога DOCUMENT, результирующий файл создайте в каталоге PLAN и назовите info.doc.
Выполнение:
C:\> a:
а:\> md astra ( аналогично PLAN)
а:\>cd astra
а:\astra> md color ( аналогично MASSA)
а:\astra> cd \plan
а:\plan> md document
а:\plan>cd \astra
а:\astra> copy con info1.txt ( аналогично info2.txt, info3.txt )
а:\astra> copy *.txt \plan\document\*.txt
а:\astra> copy info3.txt \color\solnze.doc
а:\astra>cd \plan\document
а:\plan\document> copy *.txt \plan\info.doc
Задание 2.
1. На диске а:\ создайте “дерево” каталогов
2. В каталоге GAMES создайте файлы: m1.txt, содержание: “Я – выпускник”; m2.txt, содержание: “Я учусь в 11в классе”; m3.txt, содержание: ”Я учусь в 12 школе”.
3. Скопируйте все файлы из каталога GAMES в каталог PHONE, под тем же именем, изменив расширение с .txt на .doc.
4. Произведите конкатенацию всех файлов каталога PHONE, результирующий файл создайте в каталоге BOOKS и назовите text.doc.
Важнейшей особенностью MS DOS является модульность, что позволяет при необходимости расширения функций системы модифицировать отдельные её модули.
DOS состоит из следующих основных модулей:
Базовая система ввода/вывода - (BIOS)
В архитектуре ПЭВМ базовую систему ввода/вывода (BIOS) можно рассматривать с одной стороны как составную часть аппаратных средств, с другой стороны, BIOS является одним из программных модулей DOS. BIOS находится не на дисках, как все остальные модули, а в постоянном запоминающем устройстве (ПЗУ), установленном внутри системного блока.
2). Вызов блока начальной загрузки DOS.
Загрузка DOS в память происходит в два этапа; сначала BIOS загружает с системного диска в память специальный блок начальной загрузки, а затем уже передает на него управление, и тот, в свою очередь, осуществляет загрузку всех остальных модулей DOS.
3). Обслуживание системных вызовов или прерываний.
Системные вызовы вырабатываются программными или аппаратными средствами с целью выполнения различных операций. Для реализации системных вызовов используется механизм прерываний.
Прерывания можно разделить на три группы: аппаратные, логические и программные.
Источники аппаратных прерываний - падение напряжения питания, нажатие клавиши на клавиатуре, приход очередного импульса от счетчика времени, возникновение специальных сигналов от накопителей на гибких или жестких дисках и др.
Логические или процессорные прерывания возникают при различных нестандартных ситуациях в работе основного микропроцессора - делении на ноль, переполнении регистров, появлении "точки останова" и др.
Программные прерывания - самая обширная категория. Они вырабатываются, когда одна программа хочет получить определенный сервис со стороны другой программы, причем этот сервис обычно связан с работой аппаратных средств.
Каждое прерывание имеет уникальный номер и с ним может быть связана определенная подпрограмма, призванная обслуживать возникшую ситуацию. Сама обслуживающая подпрограмма, вообще говоря, тоже может быть приостановлена другим прерыванием.
На BIOS возлагается задача обслуживания прерываний нижнего уровня - тех, которые требуют непосредственного управления аппаратными компонентами. Этим прерываниям присвоены номера с 0h по 1Fh. Другие прерывания - с номерами 20h-3Fh - относятся к более высокому уровню, и их обслуживание возлагается на другие модули DOS.
Блок начальной загрузки (Boot Record)
Блок начальной загрузки (БНЗ) или просто "загрузчик" – это небольшая программа, единственная функция которой заключается в считывании с дисков в оперативную память двух других частей DOS - модуля расширения базовой системы ввода/вывода и модуля обработки прерываний.
Длина БНЗ - 512 байт, то есть он занимает всего один сектор на диске, поэтому содержащаяся в нем программа не может быть чрезмерно сложной.
Работа БНЗ очень простая. Он должен просмотреть каталог системного диска и убедиться, что первые два файла как раз и являются модулями DOS. В DOS эти файлы имеют специальные имена: IO.SYS и MSDOS.SYS. Для упрощения БНЗ они размещаются на системном диске всегда первыми - один за другим в последовательных секторах. При этом эти файлы снабжаются специальным атрибутом, который делает их "невидимыми",- при выводе каталога диска на экран дисплея или на принтер. Имена указанных системных файлов не выводятся, хотя они и присутствуют в каталоге.
Здесь следует заметить, что машину можно "перезапустить" двумя способами. Один из них, очевидный, заключается в выключении и повторном включении питания всей машины. Однако, этот "грубый" способ не очень-то полезен для электронных компонентов системного блока, чувствительных к броскам напряжения питания.
Другой способ перезапуска - с помощью специальной комбинации клавиш . Во втором случае тестирование памяти и других аппаратных компонентов не производится, а сразу начинается поиск и загрузка в память БНЗ.
Модуль расширения BIOS (IO.SYS)
Модуль расширения базовой системый ввода-вывода расположен в файле IO.SYS и обеспечивает обращение к подпрограммам BIOS.
Базовая система ввода/вывода является инвариантной к тому, какая именно операционная система устанавливается на данной машине. В этом смысле BIOS является общей и неизменяемой частью всех возможных операционных систем для данной модели ПЭВМ. Изменение BIOS - нетривиальная задача, поскольку она очень тесно связана с особенностями аппаратуры конкретной модели ПЭВМ.
Расширение BIOS с помощью дополнительного модуля DOS придает гибкость операционной системе, позволяя управлять с ее помощью таким набором аппаратных средств ПЭВМ, который наиболее точно соответствовал бы замыслу разработчиков конкретной DOS.
Модуль расширения BIOS это обычная программа, которая при необходимости может быть заменена другой программой. При этом использование механизма прерываний позволяет, с одной стороны, очень просто и изящно "перекрывать" функции, обслуживаемые BIOS; c другой стороны, появляется возможность включения дополнительных подпрограмм, обслуживающих новые внешние устройства. Такие подпрограммы носят название драйверов внешних устройств. Системный программист может разработать свои драйверы не только для новых внешних устройств, но и для тех, которые стандартно входят в состав аппаратуры (при этом обмен информацией со стандартными устройствами будет происходить уже иначе, чем принято в оригинальной версии DOS). Это придает системе большую гибкость и возможность адаптации ее под любые требования пользователей.
Информирование системы о необходимости подключения новых драйверов внешних устройств, а также об изменении других параметров DOS осуществляется через специальный файл конфигурации CONFIG.SYS.
Модуль обработки прерываний DOS (MSDOS.SYS)
В отличие от описанного выше модуля расширения BIOS, имеющего дело с прерываниями нижнего уровня, модуль обработки прерываний DOS образует верхний уровень системы, с которыми взаимодействует большинство прикладных программ. По этой причине этот модуль ДОС называют базовым.
Компонентами данного модуля являются подпрограммы, обеспечивающие работу файловой системы, устройств, обслуживание некоторых специальных ситуаций, связанных с завершением программ, их искусственным прерыванием и обработкой ошибок. Некоторые из этих подпрограмм довольно велики по объему.
Многие из функций, реализуемых данным модулем DOS, используются не только прикладными программами, но и командами, которые обрабатываются командным процессором.
Резидентная часть содержит подпрограммы стандартной обработки прерываний. Здесь же находится программа подзагрузки нерезидентной части в ОЗУ. Кроме того, в состав резидентной части входит подпрограмма инициализации, которая обрабатывает файл AUTOEXEC.BAT при запуске машины.
Нерезидентная часть включает программу обработки команд DOS, поступающих с терминала или из командных файлов. В нерезидентную часть входит загрузчик внешних программ, задачей которого является чтение очередной программы с диска в ОЗУ, настройка адресов и переход на ее исполнение.
Основные функции командного процессора заключаютcя:
- в приеме, анализе и исполнении команд пользователя, обращенных к DOS
- в обработке командных файлов
Команды пользователя иначе называют командами DOS. Они служат основным средством общения пользователя с дисковой операционной системой до тех пор, пока не будет вызвана какая-либо прикладная программа (задача), или "надстройка", которая заслонит DOS от пользователя своим интерфейсом. По окончании работы прикладной системы вновь вступает в действие командный процессор, обеспечивая обработку команд ДОС.
Команды DOS позволяют готовить диски для работы, копировать файлы, переименовывать их, удалять из каталогов, сменять текущий каталог и текущий накопитель, изменять режим работы дисплея, выводить содержимое текстовых файлов на экран дисплея, на принтер или в коммуникационный канал.
DOS осуществляет запуск любой прикладной программы. В этой роли могут, в частности, фигурировать "утилиты" ДОС - программы, выполняющие какую-либо сервисную функцию (например, начальную разметку диска).
В отличие от встроенных или "внутренних" команд DOS, реализуемых подпрограммами трех основных модулей, "внешние" команды, которые обычно входят в стандартный комплект DOS, реализуются посредством автономных сервисных программ. Такие программы называют утилитами.
Достоинством DOS является то, что любая программа может играть роль сервисной, поскольку для ее запуска достаточно указать лишь имя файла, в котором она содержится. Следовательно, с точки зрения пользователя такие программы не отличаются от встроенных команд DOS. Программа может воспринимать параметры, задаваемые в командной строке. Храниться она может в любом каталоге на любом диске.
Дисковые файлы IO.SYS и MSDOS.SYS. Дисковые файлы IO.SYS и MS DOS.SYS, иначе называемые основными системными файлами MS DOS, содержат программы MS DOS, которые постоянно находятся в оперативной памяти компьютера. Файлы IO.SYS и MSDOS.SYS должны находиться в корневом каталоге диска, с которого загружается MS DOS.
Внешние команды DOS.Внешние команды DOS — это программы, поставляемые вместе с операционной системой в виде отдельных файлов. Эти программы выполняют действия обслуживающего характера, например форматирование дискет, проверку дисков и т.д. Внешние команды DOS записываются в отдельный каталог при установке DOS.
Драйверы. Драйверы устройств — это специальные программы, которые дополняют MS DOS, например, обеспечивая обслуживание новых или нестандартное использование имеющихся устройств. Драйверы загружаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файле CONFIG.SYS. Такая схема облегчает добавление новых устройств и позволяет делать это, не затрагивая системные файлы DOS.
Драйверы и резидентные программы позволяют расширить возможности DOS, например, обеспечивая обслуживание новых или нестандартное использование имеющихся устройств, доступ к оперативной памяти сверх одного Мбайта, повышение скорости ввода-вывода с дисками за счет их кэширования, ввод русских букв с клавиатуры и т.д.
Можно сказать, что драйверы и резидентные программы расширяют возможности DOS, делая ее чуть-чуть многозадачной. Например, пока пользователь выполняет обычную работу с компьютером, резидентная программа или драйвер может играть музыку или принимать факсы.
Базовая система ввода-вывода. Базовая система ввода-вывода (BIOS), находящаяся в постоянной памяти (постоянном запоминающем устройстве, ПЗУ) компьютера, формально не является частью MS DOS, однако тесно с ней связана. BIOS содержит программы для проверки оборудования компьютера, инициирования загрузки операционной системы (ОС) и программы для выполнения базовых (низкоуровневых) операций ввода-вывода с монитором, клавиатурой, дисками и принтером.
Загрузчик DOS. Еще одна программа, которую можно считать частью DOS, — это загрузчик DOS. Он находится в первом секторе каждой дискеты и в первом секторе логического диска, с которого происходит загрузка DOS (то есть диска С:). Назначение этой очень короткой программы — загрузка в память системного файла DOS IO.SYS при начальной загрузке компьютера.
Начальная загрузка операционной системы DOS выполняется автоматически в следующих случаях:
при включении электропитания компьютера;
при нажатии на клавишу «Reset» на корпусе компьютера (такая клавиша есть не у всех моделей компьютеров):
при работе в DOS перезагрузка DOS выполняется также и при одновременном нажатии клавиш (Ctrl- Alt-Del) на клавиатуре.
Для выполнения начальной загрузки ОС необходимо, чтобы в дисководе А: находилась системная дискета или чтобы на логическом диске (части жесткого диска) С: была записана DOS. При начальной загрузке после выполнения BIOS проверки оборудования вызывается программа-загрузчик DOS, которая считывает в память начало одного из системных файлов DOS (для MS DOS — файла IO.SYS) и передает ему управление. Дальнейший ход загрузки зависит от вида ОС и параметров ее настройки.
2. Информация на дисках (жестких дисках, дискетах, магнитооптических дисках, компьютерных компакт-дисках и т.д.) хранится в файлах.. Файл — это поименованная область на диске или другом носителе информации. В файлах могут храниться тексты программ, документы, готовые к выполнению программы и любые другие данные.
Чтобы операционная система и другие программы могли обращаться к файлам, файлы должны иметь обозначения. Это обозначение обычно называют именем файла.
В имени и расширении имени файла прописные и строчные латинские буквы являются эквивалентными, так как DOS переводит все строчные буквы в соответствующие прописные буквы.
Некоторые «русифицированные» версии DOS позволяют употреблять в именах файлов русские буквы. Однако эту возможность следует использовать с осторожностью: многие программы не «понимают» имен с русскими буквами.
Расширение имени файла является необязательным. Оно, как правило, описывает содержание файла, поэтому использование расширения весьма удобно. Многие программы устанавливают расширение имени файла, и по нему пользователь может узнать, какая программа создала файл. Кроме того, многие программы (Norton Commander, Диспетчер Файлов Windows и т.д.) позволяют по расширению имени файла вызвать соответствующую программу и сразу загрузить в нее данный файл — это весьма полезно, так как экономит время. Например, расширения *.ЕХЕ, *.СОМ и *.ВАТ обозначают программу, которая может загрузиться и начать работу.
Имена файлов регистрируются на дисках в каталогах (директориях, папках).
Каталог — это специальное место на диске, в котором хранятся имена файлов, сведения о размере файлов, времени их последнего обновления, атрибуты (свойства) файлов и т.д. Если в каталоге хранится имя файла, то говорят, что этот файл находится в данном каталоге. На каждом диске может быть несколько каталогов. В каждом каталоге может быть много файлов, но каждый файл всегда регистрируется только в одном каталоге.
Требования к именам каталогов те же, что к именам файлов. Как правило, расширение имени для каталогов не используется, хотя делать это никто не запрещает.
На каждом диске имеется один главный, или корневой, каталог. В нем регистрируются файлы и подкаталоги (каталоги 1-го уровня).
Каталог, с которым в настоящий момент работает пользователь, называется текущим.
Для указания расположения файла на диске в системе каталогов указывается путь к файлу, который задает маршрут от текущего каталога или от корневого каталога диска к тому каталогу, в котором находится нужный файл, например, C:\MYDOC\LETTER\first.txt.
В компьютере обычно имеется несколько дисководов — накопителей на жестких дисках, дискетах, компакт-дисках, магнитооптических дисках и т.д. На каждом из них могут находиться файлы и каталоги. Для того, чтобы указать, какой диск Вам необходим, надо обратиться к дисководу по имени.
По традиции дисководы именуются А:, В:, С: и т.д. Например, в компьютере могут быть два накопителя на гибком магнитном диске А: и В: и один накопитель на жестком магнитном диске (винчестер) С: . Имена А: и В: зарезервированы для дисководов для дискет, а имя С: обычно соответствует жесткому диску, с которого производится загрузка операционной системы.
Во многих командах в именах файлов можно употреблять символы * и ? для указания группы файлов из одного каталога.
Символ * обозначает любое число любых символов в имени файла или в расширении имени файла. Символ ? обозначает один произвольный символ или отсутствие символа в имени файла или в расширении имени файла.
Для каждого файла соответствующая ему запись в каталоге (элемент каталога) содержит атрибуты файла. DOS и Windows 3.1 могут обрабатывать четыре атрибута файлов: «только для чтения» (read-only), «скрытый» (hidden), «системный» (system) и «архивировать» (archive). Каждый из этих атрибутов может быть либо установлен, либо нет.
3. В зависимости от того, как в ОС реализуется интерфейс между пользователем и программно-аппаратными средствами компьютера (интерфейс пользователя), различают неграфические и графические операционные системы. Неграфические операционные системы используют интерфейс командной строки, когда управляющие команды в текстовом виде вводят в поле командной строки. При этом основным устройством управления является клавиатура. Для компьютеров, совместимых с IBM PC, такими ОС являются операционные системы семейства MS-DOS.
Графические операционные системы в качестве органа управления используют, кроме клавиатуры, мышь или аналогичные устройства позиционирования. В качестве элемента управления здесь выступает указатель мыши, перемещение которого на экране синхронизировано с перемещением мыши. Пользователь наводит указатель мыши на элементы управления приложений (экранные кнопки, значки, переключатели и прочие) и осуществляет действия щелчками кнопок мыши. Для компьютеров, совместимых с IBM PC, такими ОС являются операционные системы семейства Microsoft Windows.
Рассмотрим преимущества и недостатки Windows для пользователей прикладных программ.
Удобство поддержки устройств. Основное отличие программ для DOS и для Windows состоит в том, что DOS-программа может работать с аппаратными средствами компьютера (монитором, клавиатурой, принтером и т.д.) непосредственно, минуя DOS (и, как правило, поступает именно таким образом), в то время как Windows-программа должна обратиться к внешним устройствам только через посредство Windows. Поэтому после установки в Windows драйвера, обеспечивающего поддержку данного устройства (то есть настраивающего Windows на особенности данного устройства), все Windows-программы могут работать с этим устройством. Это ликвидирует весьма болезненную для DOS проблему обеспечения совместимости программ с конкретными внешними устройствами. Программы (драйверы) для поддержки наиболее распространенных устройств входят в Windows, а для остальных устройств — поставляются вместе с этими устройствами или контроллерами.
Единый пользовательский интерфейс. Windows предоставляет программистам все необходимые средства для создания пользовательского интерфейса (API Application Programming Interface — Интерфейс программирования приложений), поэтому программисты пользуются ими, а не изобретают аналогичные собственные средства.
Вследствие этого пользовательский интерфейс Windows-программ в значительной степени унифицирован, и пользователям не требуется изучать для каждой программы новые принципы организации взаимодействия с этой программой.
Поддержка мультимедиа. Одним из усовершенствований версии Windows 3.1 явилась поддержка мультимедиа. При подключении соответствующих устройств Windows может воспринимать звуки от микрофона, компакт-диска, или MIDI-синтезатора, изображения от цифровой видеокамеры или с компакт-диска, выводить звуки и движущиеся изображения. Это открывает большие возможности для обучающих, игровых и других программ, позволяя делать общение с компьютером более легким и приятным даже для непрофессионалов.
Многозадачность. Windows обеспечивает возможность одновременного выполнения нескольких программ и переключения с одной программы на другую.
Многозадачность (multitasking) — это одно из тех туманных слов, которые использует каждый, но никто не берется определять. Прежде чем перейти к обсуждению многозадачности, необходимо определить термин "задача". Задача (task) — выполняемое приложение. Можно думать, что после того, как WINDOWS загружена, ничего не происходит, однако после запуска операционной системы на компьютере уже выполняется несколько приложений. Например, Проводник рассматривается как задача. Сетевые присоединения или очереди печати рассматриваются как задачи. Заставка — это тоже задача. Существуют также несколько системных задач. Ядро WINDOWS рассматривается как задача. В компьютерном мире принято два названия для выполняющегося приложения или потока: процесс или задача. Я предпочитаю термин "задача", поскольку он менее туманный, чем термин "процесс". Однако в литературе можно встретить смешение этих терминов.
В WINDOWS 3-Х можно ассоциировать каждую задачу с одним приложением. Определение задачи в случае WINDOWS 98 или WINDOWS NT не ограничивается этим. Некоторые 32-разрядные приложения используют многопоточность (multithreading), что позволяет им выполнять более одной задачи одновременно. Например, можно было бы выполнить перерасчет рабочего листа и его распечатать одновременно, если приложение поддерживало бы многозадачность. Потоки можно представлять себе как подзадачи, которые выполняет приложение.
После того как определено понятие "задача", рассмотрим многозадачность. Обычно подразумевается, что многозадачность является именно тем, о чем говорит само название — несколько задач (или процессов), которые выполняются одновременно на одном компьютере. Важно принять во внимание тот факт, что операционная система разделяет время между задачами. Рассматривая WINDOWS, очень важно определить метод, который используется для управления задачами. WINDOWS 98 поддерживает два типа многозадачности: кооперативную и приоритетную.
С выходом WINDOWS 3.0 было введено понятие кооперативной многозадачности. Она заключается в следующем: приложение А выполняется в определенное время, достаточное для того, чтобы закончить одну часть задачи. Затем оно возвращает управление системой WINDOWS, т. о. WINDOWS может позаботиться о системных задачах и позволить выполнить часть задачи приложению Б.
Разрабатывая WINDOWS NT, компания Microsoft желала внести в операционную систему нечто лучшее, чем кооперативная многозадачность, решением этого вопроса стала приоритетная многозадачность. Операционная система WINDOWS 98 поддерживает приоритетную многозадачность для любого 32-разрядного приложения, которое выполняется в системе. Количество времени, выделяемого для каждой задачи, оценивается операционной системой по некоторым критериям. В результате каждое приложение получит долю процессорного времени в соответствии с его приоритетом. WINDOWS 98 производит мониторинг каждого приложения и прерывает их выполнение, когда заканчивается отведенное им время. Не важно, желает ли приложение возвратить управление операционной системе или нет, WINDOWS 98 не оставляет выбора.
Средства обмена данными. Для организации обмена данными между различными программами Windows предлагает различные способы обмена данными между приложениями.
Недостатки Windows. Как известно, любая медаль имеет две стороны. И у Windows имеются не только преимущества, но и недостатки, которые мы и опишем ниже.
1) Описанные выше преимущества Windows достаются за счет значительного увеличения нагрузки на аппаратные средства компьютера. Часто программы с приблизительно одинаковыми возможностями для DOS и для Windows отличаются по требованиям к ресурсам компьютера в десятки раз. Развитие компьютерной индустрии вскоре скомпенсировало это повышение требований к ресурсам. Сейчас компьютеров, не способных работать с WINDOWS , уже не выпускается.
2) Windows-программы недостаточно эффективно работают в тех приложениях, где критическим ресурсом является время. Например, при создании базы данных с напряженным режимом использования целесообразность ее функционирования в среде WINDOWS может быть иногда весьма сомнительна, так как база данных в DOS может работать в 1,5-2 раза быстрее.
Рассмотрим некоторые черты операционной системы WINDOWS 98.
Windows 98 унаследовала архитектуру, которая лежала в основе операционных систем WINDOWS 95, WINDOWS 3-Х И MS-DOS. Однако проблемы, с которыми часто сталкивались пользователи в прошлых версиях, гораздо реже встречаются в WINDOWS 98. Система WINDOWS 98 включает дополнительные возможности поддержки 16-разрядных приложений, предоставляя им расширенный доступ к 32-разрядным компонентам. Это обеспечивает неплохую производительность и умеренный уровень защиты 16-разрядных приложений. Все новые средства, включенные в WINDOWS 98, дают этой операционной системе значительные преимущества перед предыдущими версиями, однако она по-прежнему далека от совершенной операционной системы, если рассматривать ее с точки зрения надежности выполнения приложений.
По сравнению с WINDOWS 98 операционная система WINDOWS NT является более стабильной. К сожалению, некоторые приложения (в том числе программы MS-DOS) не будут работать под управлением WINDOWS NT, поскольку средства WINDOWS NT, обеспечивающие устойчивую работу приложений, одновременно являются преградой для выполнения некоторых операций. По показателям надежности Windows 98 находится примерно посередине между WINDOWS NT и MS-DOS — она имеет средства повышения надежности выполнения приложений, предоставляет усовершенствованные 32-разрядные компоненты и, в то же время, обеспечивает совместимость с предыдущими версиями WINDOWS (и даже MS-DOS), что позволяет использовать старые приложения. Windows 98 работает более устойчиво, чем все ее предшественницы (WINDOWS 95 и WINDOWS 3-Х). Тем не менее, WINDOWS 98 не всегда может завершить работу приложения, попавшего в неуправляемое состояние.
FAT32, или более точно, 32-разрядный FAT, является новой файловой системой, которая поддерживается операционной системой WINDOWS 98. Как правило, использование FAT32 позволяет сократить применение дискового пространства на 20—50%. Менее известными, однако более значимыми, являются средства поддержки отказоустойчивости в файловой системе FAT32. В отличие от FAT16, корневая папка FAT32 может быть расположена в любом месте диска. При помощи вспомогательного программного обеспечения можно переместить корневую папку в любое место диска, чтобы устранить возможные ошибки. Эта означает, что FAT32 не страдает от ограничений старой корневой папки, таких как количество файлов, которые можно хранить в ней. FAT32 может использовать обе копии таблицы FAT.
Хотя длинные имена могут содержать до 254 символов, не следует использовать имена более чем с 60-70 символами. Во-первых, такие длинные имена долго читать и в них неудобно ориентироваться. Во-вторых, длина полного имени файла ограничена 260 символами, так что файл с очень длинным именем, помещенный в глубоко вложенный каталог, может не восприниматься некоторыми программами. И наконец, не рекомендуется использовать длинные имена в корневом Каталоге дисков — объем корневых каталогов ограничен.
Читайте также: