Программы DOS
Содержание
Введение
Глава 1. Операционная система MS-DOS
1.1 Версии DOS
1.2 Структура операционной системы DOS
Глава 2. Прикладные программы в среде DOS
2.1 Структура прикладных программ в среде DOS
2.2 Префикс программного сегмента
2.3 Программы типа .COM
2.4 Программы типа .EXE
2.5 Резидентные программы
2.6 Расширители DOS
Глава 3. Примеры программ, работающих под управлением DOS
3.1 Автоматизированная диагностическая система «АМСАТ - 7.81»
3.2 Программа SLS-Касса
3.3 Программа Simulation Field Of View (SIMFOV)
3.4 Программа Турбограф XXI
Заключение
Литература
Приложение
Введение
Современный компьютер – это универсальное, многофункциональное, электронное автоматическое устройство для работы с информацией. Его программное обеспечение можно разделить на общесистемное и прикладное. Операционные системы (ОС), являясь основой первого, обеспечивают функционирование и взаимосвязь всех компонентов компьютера и предоставляют пользователю доступ к его аппаратным возможностям.
По своим функциональным свойствам ОС делятся на три группы:
однопользовательские однозадачные;
однопользовательские многозадачные;
многопользовательские многозадачные.
Несмотря на то, что в исторической последовательности первыми на сцену вышли (в 60 – 70-е годы XX века) именно многопользовательские многозадачные ОС (OS 360/370, RSX и пр.), наибольшее распространение (вместе с ПК) получили однозадачные ОС: MS-DOS и ее аналоги.
МS DOS поддерживает компьютерные сети и графические интерфейсы пользователя, всевозможные запоминающие устройства, служит основой для тысяч прикладных программ.
Цель данной работы заключается в рассмотрении программ, работающих под управление операционной системы DOS.
Задачи работы:
рассмотреть версии и структуру операционной системы DOS;
выделить типы программ, работающих под управлением системы МS DOS: программы с расширением .СОМ и .ЕХЕ;
привести примеры программ, работающих под управлением DOS.
Глава 1. Операционная система MS-DOS
1.1 Версии DOS
Первой разработкой MS-DOS можно считать операционную систему (ОС) для персональных ЭВМ, созданную фирмой Seattle Computer Products в 1980 г. В конце 1980 г. система, первоначально названная QDOS, была модифицирована и переименована в 86-DOS [5, c. 23].
Право на использование 86-DOS было куплено Корпорацией Microsoft, заключившей контракт с фирмой IBM, обязуясь разработать операционную систему для новой модели персональных компьютеров, выпускаемых фирмой. Когда в конце 1981 г. новый компьютер IBM PC приобрел широкую популярность, его операционная система представляла собой модифицированную версию системы 86-DOS, названную PC-DOS, версия 1.0.
Вскоре после выпуска IBM-PC на рынке стали появляться персональные компьютеры «схожие с РС». Операционная система этих компьютеров называлась MS-DOS, версия 1.0. Корпорация Microsoft предоставила в распоряжение фирм, производящих эти машины, точную копию операционной системы PC-DOS - широко теперь применяемую MS-DOS [2, c. 76].
Единственным серьезным различием этих систем было то, что называется «уровнем системы». То есть для каждой машины необходимо было покупать свою ОС. Отличительные особенности каждой системы мог выявить только системный программист, в чьи обязанности входила работа по «подгонке» операционной системы к конкретной машине. Пользователь, работающий на разных машинах, не ощущал никакой разницы между ними.
С момента выпуска операционные системы PC-DOS и MS-DOS усовершенствовались параллельно и аналогичным образом. В 1982 году появились версии 1.1. Главным преимуществом новой версии была возможность использования двухсторонних дискет (версия 1.0 позволяла работать только с односторонними дискетами), а также возможность пересылки принтеровского вывода на другие устройства [8, c. 29].
В 1983 году были разработаны версии 2.0. По сравнению с предыдущими они давали возможность использовать жесткий диск, обеспечивали усложненный иерархический каталог диска, включали встроенные устройства для дискет и систему управления файлами.
MS-DOS версии 3.0, выпущенная в 1984 году, предоставляла улучшенный вариант обслуживания жесткого диска и подсоединенных к компьютеру микрокомпьютеров. Последующие версии, включая 3.3 (появившуюся в 1987 году), развивались в том же направлении.
MS-DOS версии 5.0 предоставляет возможность использования памяти расположенной выше 1M [1, c. 24].
В MS-DOS версии 6.0 расширены возможности использования памяти расположенной выше 1M, добавлена утилита оптимизации использования памяти Memmaker. Добавлено средство увеличения эффективного дискового пространства DoubleSpace. В комплект поставки включены утилиты проверки и оптимизации жесткого диска ScanDisk и Defrag.
1.2 Структура операционной системы DOS
Операционная система (ОС) – это комплекс специальных программных средств, предназначенных для управления загрузкой компьютера, запуском и выполнением других пользовательских программ, а также для планирования и управления вычислительными ресурсами персонального компьютера. Она обеспечивает управление процессом обработки информации и взаимодействие между аппаратными средствами и пользователем [7, c. 54]. ОС входит в системное программное обеспечение (см. Приложение).
ОC DOS состоит из следующих частей [6, c. 99 – 103]:
Базовая система ввода-вывода (BIOS), находящаяся в постоянной памяти (постоянном запоминающем устройстве, ПЗУ) компьютера. Эта часть операционной системы является «встроенной» в компьютер. Ее назначение состоит в выполнении наиболее простых и универсальных услуг операционной системы, связанных с осуществлением ввода-вывода. Базовая система ввода-вывода содержит также тест функционирования компьютера, проверяющий работу памяти и устройств компьютера при включении его электропитания. Кроме того, базовая система ввода-вывода содержит программу вызова загрузчика операционной системы.
Загрузчик операционной системы — это очень короткая программа, находящаяся в первом секторе каждой дискеты с операционной системой DOS. Функция этой программы заключается в считывании в память еще двух модулей операционной системы, которые и завершают процесс загрузки DOS. На жестком диске (винчестере) загрузчик операционной системы состоит из двух частей. Это связано с тем, что жесткий диск может быть разбит на несколько разделов (логических дисков). Первая часть загрузчика находится в первом секторе жесткого диска, она выбирает, с какого из разделов жесткого диска следует продолжить загрузи. Вторая часть загрузчика находится в первом секторе этого раздел она считывает в память модули DOS и передает им управление [3, c. 98].
Дисковые файлы 10.SYS и MSDOS.SYS (они могут называться по-другому, например IВМВ.СОМ и IBMDOS.COM для PC DO; URBIOS.SYS и DRDOS.SYS для DR DOS, — названия меняются в зависимости от версии операционной системы). Они загружаются в пaмять загрузчиком ОС и остаются в памяти компьютера постоянно. Файл I0.SYS представляет собой дополнение к базoвой системе ввода-вывода в ПЗУ. Файл MSDOS.SYS реализует основные высокоуровневые услуги DOS.
Командный процессор DOS обрабатывает команды, вводимые пользователем. Командный процессор находится в дисковом файле COMMAND.СОМ на диске, с которого загружается ОС. Некоторые команды пользователя, например Type, Dir или Сор командный процессор выполняет сам. Такие команды называются внутренними.
Для выполнения остальных (внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем и если находит ее, то загружает в память и передает eй управление. По окончании работы программы командный процессор удаляет программу из памяти и выводит сообщение о готовности к выполнению команд (приглашение DOS).
Внешние команды DOS — это программы, поставляемые вместе с операционной системой в виде отдельных файлов. Эти программы выполняют действия обслуживающего характера, например форматирование дискет, проверку дисков и т.д.
Драйверы устройств — это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых или нестандартное использование имеющихся устройств. Например, с помощью драйверов возможна работа с «электронным диском» т.е. частью памяти компьютера, с которой можно работать так же, как с диском. Драйверы загружаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файл CONFIG.SYS. Такая схема облегчает добавление новых устройств позволяет делать это, не затрагивая системные файлы DOS [5, c. 71].
Глава 2. Прикладные программы в среде DOS
2.1 Структура прикладных программ в среде DOS
Программы, которые выполняются под управлением системы МS DOS, делятся на два основных типа: программы с расширением .СОМ, которые имеют максимальный размер около 64 К, и программы с расширением .ЕХЕ, которые могут иметь размер наибольшей доступной памяти. На языке микропроцессора Intel 8086 это означает, что программы типа .СОМ соответствуют минимальной модели, в которой все регистры сегмента содержат одну и ту же величину, т.е. программа и данные объединены. В противоположность этому программы типа .ЕХЕ образуют малую, среднюю или большую модели, в которых регистры сегмента содержат различные величины, т.е. программа, данные и стек постоянно находятся в отдельных сегментах. Программы типа .ЕХЕ могут иметь много сегментов программ и данных, адресация к которым осуществляется при помощи длинных вызовов и манипуляций е регистром сегмента данных DOS [6, c. 29].
Программа типа .СОМ постоянно хранится на диске в виде абсолютного образа памяти в файле с расширением .СОМ. У файла отсутствуют заголовок или какая-либо другая внутренняя служебная информация. С другой стороны, программа типа .ЕХЕ постоянно находится на диске в файле специального типа, который имеет индивидуальный заголовок, карту настройки, контрольную сумму и другую информацию, используемую системой МS DOS.
Оба типа программ с расширением .СОМ и .ЕХЕ переносятся в память для выполнения с помощью одного и того же механизма, а именно функции ЕХЕС, которая образует загрузчик системы МS DOS. Функция ЕХЕС может вызываться с именем файла программы, загружаемой СОММАND.СОМ (обычным интерпретатором командной строки системы МS DOS) либо другой оболочкой, пользовательским интерфейсом или другой программой, которая была загружена раньше с помощью ЕХЕС. Если в области транзитных программ достаточно свободной памяти, то ЕХЕС выделяет блок памяти под новую программу, строит префикс сегмента программы (РSР) по его базовому адресу, а затем считывает программу в память непосредственно над РSР. В конце своей работы ЕХЕС устанавливает регистры сегмента и стека и передает управление программе.
После активизации программы ЕХЕС может выдавать адреса дополнительной информации, такой, как хвост команды, блоки управления файлами, контекстный блок. При необходимости эту информацию можно передавать другой программе [8. c. 35].
Программы с расширением .СОМ и .ЕХЕ часто называют транзитными программами. Транзитная программа на время своего выполнения "владеет" блоком выделенной ей памяти и имеет почти полный контроль над системными ресурсами. При завершении работы такой программы по любой причине - снятие операционной системой, успешное выполнение и выход в МS-DOS - выделенный ей блок памяти освобождается (отсюда термин "транзитный") и может быть использован следующей загружаемой программой.
2.2 Префикс программного сегмента
МS DOS отводит префиксу сегмента программы область в 256 байт в начале блока памяти, выделяемого транзитной программе. Префикс имеет несколько связей с МS DOS, которые могут использоваться транзитной программой; кроме того, определенную информацию записывает в него МS DOS как для собственных целей, так и для передачи транзитной программе, которая в случае необходимости может информацию использовать.
В префиксе по относительному адресу 0000Н находится команда передачи управления системному обработчику завершения процесса, который удаляет программу после ее выполнения и осуществляет окончательный выход. По относительному адресу 0005Н находится команда связи с диспетчером функций МS DOS, который осуществляет дисковые операции, операции ввода-вывода через консоль и другое сервисное обслуживание по запросу транзитной программы [7, c. 13].
В слове префикса с относительным адресом 0002Н находится сегментный адрес верхней границы блока памяти, выделенного транзитной программе. Программа может с помощью этого значения определить, следует ли запросить больше памяти для своей работы и имеется ли лишняя память, которую можно освободить для нужд других процессов.
Область префикса с адреса 000АН по адрес 0015Н предназначена для предыдущего содержимого векторов прерываний обработчиков завершения Сtг1-С и критической ошибки. Если транзитная программа изменит эти векторы для своих целей, то после ее завершения система DOS восстановит исходные значения векторов, сохраненные в префиксе. Слово префикса с относительным адресом 002СН хранит сегментный адрес блока окружения, в котором находится несколько АSCIIZ-строк (последовательности символов в коде АSCII, заканчивающиеся нулевым байтом). Блок окружения наследуется от программы, которая вызывала функцию ЕХЕС для загрузки выполняющейся в данный момент программы. В блоке находится такая информация, как текущий путь, используемый программами файла СОММАND.СОМ для поиска выполнимых программ, расположение на диске самого файла СОММАND.СОМ, формат запроса пользователя, который выдается СОММАND.СОМ. Хвост команды - это остаток командной строки (после имени программы), запустившей транзитную программу; хвост команды копируется в префикс, начиная с относительного адреса 0081Н. Длина хвоста команды, без учета символа возврата в конце строки, помещается в байт с относительным адресом 0080Н. Параметры перенаправления или конвейеризации и связанные с ними имена файлов не встречаются в той части командной строки (хвосте команды), которая передается транзитной программе, так как операция переназначения прозрачна для прикладных программ [1, c. 75].
Область префикса длиной 128 байт от 0080Н до 00FFН, устанавливаемая системой МS DOS до передачи управления транзитной программе, служит также стандартной дисковой областью пересылки (disk transfer area, DTA). Если программа явным образом не изменяет DТА, то все операции чтения или записи файла, затребованные вызовами группы функций типа FСВ (file control bloc - блок управления файлами), автоматически используют эту область в качестве буфера данных.
2.3 Программы типа .COM
Программы типа .СОМ хранятся на диске в виде файлов, в которых содержится абсолютный образ машинных команд, предназначенных для выполнения. Так как файлы не содержат никакой настроечной информации, то они компактнее эквивалентных файлов типа .ЕХЕ, к тому же загружаются для выполнения немного быстрее. Заметим, что DOS не пытается выяснить, действительно ли файл типа .СОМ содержит выполнимую программу (в отличие от файла .ЕХЕ нет признака, ни контрольной суммы). Система заносит любой файл с расширением .СОМ в память и передает ему управление.
Tак как программы типа .СОМ загружаются непосредственно над префиксом сегмента программы и, кроме того, не имеют заголовка, который может задавать другую точку входа, то их начальный адрес всегда составляет 0100H, что определено размером префикса. Максимальная длина программы типа .СОМ составляет 65536 байт минус длина префикса (256 байт) и обязательное слово стека (2 байта) [2, c. 54].
Когда управление передается программе типа .СОМ, все регистры указывают на префикс. В указатель стека SР, если позволяет память, помещается число 0FFFFН, в противном случае - максимальный адрес памяти минус 2 байта. (DOS при входе в программу помещает в стек нулевое слово.)
Несмотря на то что размер выполнимого файла типа .СОМ не может превзойти 64 К, существующие в настоящее время версии системы МS DOS выделяют программам типа .СОМ в момент их загрузки всю область транзитных программ. Так как такие программы часто являются наследием раннего периода МS-DOS и необязательно корректны в отношений управления памятью, то операционная система делает наихудшее предположение и дает программам типа .СОМ все, что возможно. Если программа типа .СОМ хочет использовать для возбуждения другого процесса функцию ЕХЕС, то сначала она должна сократить выделяемую ей память до минимума, обеспечивающего продолжение ее работы, обращая внимание при этом на сохранение стека программы. Когда программа типа .СОМ завершает выполнение, она возвращает управление операционной системе с помощью системного прерывания Int 21Н с функцией 4СН.
Прикладная программа типа .СОМ может компоноваться из многих отдельных объектных модулей. Все модули должны использовать одно и то же имя сегмента программы и имя класса, причем модуль с точкой входа по относительному адресу 0100Н внутри сегмента при компоновке должен быть первым. Кроме того, внутри программы типа .СОМ все процедуры должны иметь атрибут NEAR (ближний), так как вся выполнимая программа постоянно находится в одном сегменте [10, c. 29].
В процессе компоновки программы типа .СОМ компоновщик выдает на экран дисплея сообщение:
Warning: no stack segment (Предупреждение: нет сегмента стека)
Это сообщение можно игнорировать. Результатом работы, компоновщика является файл типа .ЕХЕ, который до выполнения должен быть преобразован с помощью системной утилиты EXE2BIN в файл типа .СОМ.
2.4 Программы типа .EXE
Структура программы типа .СОМ очень проста, а поэтому программист, которому нужно скомпилировать подобного сорта быструю утилиту, может сосредоточиться на логике программы и в минимальной степени вникать проблемы управления транслятором. Однако программы типа .СОМ имеют определенные недостатки, и поэтому наиболее серьезные программы на языке ассемблера в системе DOS написаны так, что их можно преобразовать в файлы типа .ЕХЕ.
В то время как программы типа .СОМ имеют существенное ограничение на общий размер (не более 64 Кбайт в сумме на собственно программу, данные и стек), программы типа .ЕХЕ могут быть практически неограниченного размера. Хотя обычный программный загрузчик в системе DOS не использует этого достоинства файлов типа .ЕХЕ, но способность загружать отдельные части больших программ в разные участки памяти, а также благоприятная возможность выделить "чистый код" программы, который может разделяться несколькими задачами, - все это существенно в многозадачных средах типа Мicrosoft Windows.
В операционной системе DOS загрузчик всегда вводит программу типа .ЕХЕ в память непосредственно над префиксом сегмента программы, хотя порядок сегментов программы, данных и стека может меняться. Файл типа .ЕХЕ содержит заголовок, или блок управляющей информации характерного формата. Размер заголовка определяется числом команд программы, настраиваемых во время загрузки, но всегда кратен 512 байт. До того как DOS передает управление программе, вычисляются начальные значения регистра сегмента программы CS и указателя команд IP, при этом используются информация о точке входа из заголовка файла типа .ЕХЕ, а также адрес загрузки программы. Эта информация извлекается из оператора ЕND исходного текста одного из модулей программы. Регистры сегмента данных DS и дополнительного сегмента ES указывают на префикс, таким образом, программа может обращаться к указателю блока окружения, хвосту команды и другой полезной информации, находящейся в РSР [5, c. 65].
Начальное содержимое регистра сегмента стека SS и указателя стека SP устанавливается из заголовка. Эта информация берется из объявления сегмента с атрибутом SТАСК в исходном тексте программы. Пространство памяти, выделяемое под стек, может инициализироваться тем или иным значением в зависимости от определения сегмента стека.
Когда программа типа .ЕХЕ завершает свою работу, то она должна вернуть управление DOS с помощью прерывания Int 21Н с функцией 4СН.
Программа типа .ЕХЕ, поступающая на вход компоновщика, может состоять из большого числа отдельных объектных модулей. Допускается, чтобы каждый модуль использовал уникальное имя сегмента программы, а процедуры имени атрибут либо NEAR, либо FAR в зависимости от условий определения имени и размеров выполнимой программы. Программист должен заботиться о том, чтобы компонуемые вместе модули содержали только один сегмент с атрибутом SТАСК и только одну точку входа, определяемую директивой ассемблера ЕND. Результатом работы компоновщика является файл с расширением .ЕХЕ, который можно немедленно запустить на выполнение [6, c. 31].
2.5 Резидентные программы
Большинство программ, выполнив свою работу, освобождают память и заменяются другими. Но некоторые, так называемые резидентные программы, остаются в памяти до тех пор, пока вы не выключите компьютер или не произведете перезапуск системы. Эти программы называют также резидентными в памяти или TSR-программами (terminate and stay - завершить и остаться) [13, c. 78].
Когда ДОС запускает программу, он находит для нее пространство в памяти, копирует программу с диска в память и затем на время передает управление от компьютера этой программе. Обычно по окончании работы программа возвращает управление компьютером операционной системе, и DOS использует память, которая была занята предыдущей программой, для следующей. С резидентными программами дело обстоит иначе. Когда резидентная программа завершает начальную часть своей работы, она передает управление компьютером операционной системе, но одновременно сообщает, чтобы последняя не отдавала другим программам ту область памяти, в которую она была загружена. Программа просит DOS оставить ее в памяти. В свою очередь система выставляет барьер там, где кончается резидентная программа, и загружает следующую нашу программу над резидентной программой. Что означает "над" резидентной программой? Когда мы говорим о памяти, мы связываем любую ее часть с адресом. Адреса начинаются с малых и располагаются по возрастанию. DOS и резидентные программы располагаются по адресам, начиная с малых номеров, поэтому, когда говорится, что программа загружается над другой программой, то имеется в виду, что она помещается в памяти по адресам с большими номерами. В результате, резидентная программа соединяется с небольшой частью DOS, которая остается в нижней части компьютерной памяти. Все последующие программы, которыми вы пользуетесь, будут работать в области памяти с более высокими адресами, не затрагивая резидентную программу и DOS, находящиеся ниже. Таким образом, резидентная программа постоянно находится в памяти до тех пор, пока не будет выключен компьютер.
В чем состоит суть резидентных программ? В отличие от других программ резидентная программа остается активной даже после, того, когда она, завершила свою работу. Программа остается в памяти и может продолжить свою работу, даже если после нее вы запускаете, другие программы.
Резидентные программы имеют много применений. Сама DOS включает в себя четыре различные резидентных программы. Известно также много других интересных резидентных программ, которые не являются составной частью DOS [7, c. 84].
Одна из резидентных программа DOS вызывается командой PRINT, и действует как своего рода накопитель печати (спулер). Работа накопителя печати состоит в том, чтобы выводить на принтер информацию, не занимая процессор на то время, когда производится печатание, резидентная программа PRINT справляется с этой задачей, беря на себя работу по своевременной подаче информации для принтера, оставляя в то же время процессор доступным для обслуживания других программ. Она загружает процессор процессом вывода на печать ровно настолько, чтобы принтер был постоянно занят своей работой оставляя основную часть ресурса процессора для работы других программ [12, c. 39].
По характеру своей работы программа PRINT относится к так называемым фоновым программам.
Еще один пример резидентной программы DOS - программа GRAPHICS, которая обеспечивает вывод на принтер графических изображений на экране монитора. Она загружается в память по команде GRAPHICS, но ничего не делает до тех пор, пока не будет нажата клавиша PrtSc (печать экрана). После нажатия этой клавиши выводит на печать графическое изображение, которое в этот момент присутствует на экране монитора.
2.6 Расширители DOS
Расширители DOS, дос-экстендеры (англ. DOS extenders) — технологии, позволяющие программам, работающим под управлением операционных систем семейства DOS, выполняться в защищённом режиме процессора. Существуют 16- и 32-битные расширители DOS [13, c. 78].
16-битные расширители предназначены для работы на процессорах Intel 80286 и выше, 32-битные — Intel 80386 и выше.
Работа в защищённом режиме нужна в первую очередь для преодоления ограничения адресации в реальном режиме (программа, выполняющаяся в реальном режиме процессора под управлением DOS, может адресовать только 1 Мб), не прибегая к приёмам вроде переключения банков памяти.
32-битные расширители также позволили DOS-программам выполняться в 32-битном режиме, который во многих случаях более эффективен по производительности, чем 16-битный.
Расширители DOS включают инструментальные средства для разработки приложений, часто поставлявшиеся с компиляторами, а также выполнимый код либо в виде отдельного файла (выполнимого или подгружаемого) или группы файлов, либо встраиваемый в файл продукта. Многие компиляторы имели специальные параметры и библиотеки для генерации кода под конкретный расширитель DOS [10, c. 91].
Расширители DOS предоставляют прикладной программе различные сервисы по управлению памятью и т. п. через программные прерывания.
Всем расширителям DOS приходится вызывать DOS API для доступа к диску, сети и т. д. На Intel 80386 это стало осуществлять легче, поскольку DOS можно оставить выполняться внутри задачи виртуального 8086 режима, к которой может обращаться 16- или 32-битный код. Однако на Intel 80286 вызывать DOS сложнее, потому что у 286 была только инструкция для переключения из реального в защищённый режим, а обратно не было.
Изначально расширители DOS сами выполняли переключение в защищённый режим и управляли расширенной памятью. Позднее, когда в практику вошло использование специальных менеджеров защищённой памяти, таких как CEMM или QEMM на 80386, стало необходимым создать возможность для будущих программ входить и в защищённый режим, был разработан VCPI, который предоставлялся этими менеджерами. Однако это плохо стыковалось с многозадачными ОС и не поддерживалось Microsoft, чья альтернатива, интерфейс DPMI, стала более распространённой.
Наибольшего успеха добился расширитель DOS/4G (поставлявшийся с компилятором Watcom как DOS/4GW), не в последнюю очередь благодаря игре Doom, написанной под него.
Среди остальных расширителей можно отметить: Phar Lap 386/DOS-Extender; Quarterdeck DESQview и DESQview /X, обеспечивающий многозадачную и многооконную работу обычных программ DOS; 16- и 32-битные расширители DOS фирмы Borland, поставлявшиеся с компиляторами C++ и Паскаля; GO32 (используется в GCC и Free Pascal); WDOSX (эмулирует подмножество Win32 и позволяет некоторым консольным программам выполняться под DOS); HX DOS Extender - эмулирует Win32 и позволяет некоторым консольным и OpenGL программам выполняться; CWSDPMI Используется в программах DOS, созданных с помощью DJGPP, является заменой GO32; DOS/32 Advanced DOS Extender — наиболее современный расширитель DOS, свободно используемый и с открытым исходным текстом. Часто обновляется [9, c. 41].
Глава 3. Примеры программ, работающих под управлением DOS
3.1 Автоматизированная диагностическая система «АМСАТ - 7.81»
АМСАТ - оригинальный, не имеющий в мировой практике компьютерно-программный комплекс, предназначенный для проведения зональной экспресс-диагностики функционального состояния человека в поликлиниках, профилакториях, реабилитационных центрах и специальных санаториях. При создании системы использованы работы Р.Фоля, В.Шмидта, Х.Пфлаума и др.
АМСАТ представляет собой комплекс из измерительного устройства, компьютера и измерительно-диагностирующей программы. Основным принципом работы АМСАТ является измерение электрических параметров биологически активных зон кожи несущих информацию о состоянии взаимосвязанных с ними органов и тканевых систем. Процесс измерения охватывает 6 биологически активных зон кожи и занимает не более 30 секунд.
Программа работает под управлением DOS версии не ниже 5.00. Интерфейс программы выполнен в стиле WINDOWS 3.1, при этом загружать графическую оболочку WINDOWS не нужно. При проведении неверифицированного обследования, система не требует высокой квалификации оператора и не имеет аналогов по времени проведения обследования. Значение результатов экспресс-диагностики многократно превышают материальные, временные и эксплуатационные затраты на исследование.
3.2 Программа SLS-Касса
Программа SLS-Касса обеспечивает совместную работу программы SLS-Склад и фискальных регистраторов: Мебиус, MSTAR-Ф; группы фискальных регистраторов, поддерживаемых "общим драйвером DOS" фирмы Атол: "ТОРНАДО" ("МЕРКУРИЙ-114ю1 Ф" версия 04), "ФЕЛИКС-РК" версия 01, "ФЕЛИКС-Р Ф" версия 02, "ФЕЛИКС-02К" версия 01, "Триумф-Ф" версия 01, "Меркурий-140Ф" версий 02 и 03; POS-терминалов: IPC с программным обеспечением "Пилот", ABS с программным обеспечением фирмы "Синт". Программа может работать в двух режимах: с использованием каждой кассой отдельного компьютера; с использованием одного компьютера для обслуживания нескольких кассовых аппаратов.
В первом режиме получается недорогой (в 2-3 раза дешевле IPC), но полнофункциональный POS терминал. Кассир использует клавиатуру компьютера, а кассовый аппарат, подключенный через порт RS-232, работает как фискальный принтер. Клавиатура кассового аппарата используется только для выполнения специальных функций - выдачи контрольных кассовых лент и отчетов. Программа обеспечивает работу со сканером штрих-кодов, подключаемым в разрыв клавиатуры. Второй режим обеспечивается использованием программных средств, предоставляемых производителями кассовых аппаратов (кроме АМС-100Ф). При этом программа SLS-Касса обеспечивает экспорт файла товаров и импорт результатов работы касс в соответствии с потребностями каждого из программных средств.
Программа имеет два режима работы - режим администратора и режим кассира. Режим кассира используется только при работе кассового аппарата в качестве фискального принтера. В режиме администратора можно настроить работу программы - установить тип используемых кассовых аппаратов, создать описание пользователей системы и определить информацию, необходимую для работы кассиров. Программа работает под управлением DOS, но может работать под Windows 3.1/95/98/NT или OS/2 как DOS-приложение.
3.3 Программа Simulation Field Of View (SIMFOV)
Программа работает под управлением DOS. Каталоги можно размещать на сетевом диске. Для работы программы необходима оперативная память размером 640 Кб и монитор не ниже EGA.
Наблюдатель может располагаться как на поверхности любой планеты, так и на борту космического аппарата с заданной орбитой. На дисплее отображается видимая картина расположения в поле зрения звезд, планет, а также и космических аппаратов, орбиты которых были сообщены программе. Отображение поля зрения происходит динамически: картинки вычисляются для моментов времени, разделенных задаваемым шагом и, по мере готовности, выводятся на экран. Можно остановить картинку и выдать информацию о любом объекте на экране. В программе имеется режим координатного отождествления звезд, вводимых из внешнего файла.
Основная особенность программы заключается в том, что положения абсолютно всех изображаемых на экране объектов вычисляются. Нет ни одного элемента, ни среди звезд, ни на планетах, которые рисовались бы по заранее заготовленным шаблонам. Точность экранных положений звезд составляет 0.02-0.03 секунды дуги. Однако точность средних координат, выдаваемых в файл, полностью соответствует точности каталожных исходных данных. Учет прецессии и собственных движений при расчете выходных координат проводится по формулам, сохраняющим точность исходных координат. Программа может быть использована для решения следующих задач: работа с каталогами звезд; работа с планетами и сателлитами.
3.4 Программа Турбограф XXI
Турбограф XXI это экранный графический редактор, который позволяет просто и быстро рисовать, сохранять и воспроизводить свои рисунки. Турбограф XXI предоставляет самый простой способ включения рисунков в программы на Турбо Паскале, Турбо Си и Турбо Си++. Являясь мощным средством создания иллюстраций, Турбограф XXI незаменим при обучении программированию, доступен даже ребенку. Программа Турбограф XXI работает на компьютерах, совместимых с IBM PC/XT/AT/PS/2, под управлением MS DOS версии 3.1 и выше [4, c. 26-35], [11, c. 15-21].
Операционная система — это программа, которая загружается при включении компьютера. Она производит диалог с пользователем, осуществляет управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускает другие (прикладные) программы на выполнение. Операционная система обеспечивает пользователю и прикладным программам удобный способ общения (интерфейс) с устройствами компьютера.
Основная причина необходимости операционной системы состоит в том, что элементарные операции для работы с устройствами компьютера и управления ресурсами компьютера — это операции очень низкого уровня, поэтому действия, которые необходимы пользователю и прикладным программам, состоят из нескольких сотен или тысяч таких элементарных операций.
Заключение
Операционные системы ЭВМ развиваются и модифицируются в общем контексте развития технических и программных средств. Постоянной средой этого развития является сосуществование по меньшей мере трех уровней организации информационно-вычислительных процессов – аппаратного, программного и информационного.
Всего за несколько лет система МS DOS прошла путь от простого загрузчика до универсальной сложившейся операционной системы для персональных компьютеров, построенных на базе микропроцессоров Intel 8086.
Система МS DOS, имеющая более 10 млн. зарегистрированных пользователей, постоянно «отбирает» пользователей у своих конкурентов.
В данной работе мы рассмотрели версии и структуру ОС MS-DOS; выделили и проанализировали основные типы программ, работающих под управлением DOS: типа .COM, типа .EXE, резидентные программы; привели следующие примеры программ: автоматизированную диагностическую систему «АМСАТ - 7.81», SLS-Касса, Simulation Field Of View (SIMFOV).
Данная тема очень интересна и требует ее дальнейшего изучения. В связи с этим возможно следующее направление продолжения работы: разработка полной классификации программ, работающих под управлением DOS.
В результате проведенной работы была достигнута ее цель и получены позитивные результаты в решении всех поставленных задач.
Литература
1. Богумирский, Б.С. MS-DOS 6.2. Новые возможности для пользователя / Б.С. Богумирский. – СПб.: Питер, 1994.
2. Информатика. Базовый курс / под. ред. Симоновича С.В. – СПб. : Питер, 2000.
3. Могилев А.В. Информатика: Учеб. пособие для студ. пед. вузов / А.В. Могилев, Н.И. Пак, Е.К. Хеннер; Под ред. Е.К. Хеннера. – 3-е изд., перераб. И доп. – М.: Издательский центр «Академия», 2004.
4. Некоторые особенности графической библиотеки фирмы Борланд. Компьютер-Пресс. – №8. – 1994. – С. 26-35.
5. Операционная система MS DOS. – М.: Радио и связь, 1992.
6. Партыка Т.Л., Попов И.И. Операционные системы, среды и оболочки: Учебное пособие. – М.: ФОРУМ: ИНФРА-М, 2006.
7. Першиков В.И., Савинов В.М. Толковый словарь по информатике. – М.: Финансы и статистика, 1991.
8. Соловьев Г.Н., Никитин В.Д. Операционные системы ЭВМ. – М.: Высш. шк., 1989.
9. Степанов А.Н. Информатика: Учебник для вузов. 4-е изд. – СПб.: Питер, 2006.
10. Титаренко С.П. Управление процессами в современных операционных системах ЭВМ. Учебное пособие. Изд. Белгородской государственной технологической академии строительных материалов, 1999.
11. Турбограф: нарисуйте программу на Паскале и Си. Компьютеры + Программы. – №4. – 1994. – С. 15-21.
12. Фигурнов В.Э. IBM PC для пользователя. 6-е изд. – М.: ИНФРА, 1995.
13. Франкен Герхард, Молявко Сергей «MS-DOS 6.2 для пользователя», Киев, BHV, 1994, Москва, БИНОМ, 1994.
Приложение
Системное программное обеспечение