Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга Башков.doc
Скачиваний:
40
Добавлен:
20.11.2019
Размер:
26.92 Mб
Скачать

Глава 6

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ МИКРОЭВМ

Допустим, что пользователь приобрел персональную ЭВМ, вернее, только аппаратуру персональной ЭВМ, без единой строчки программ для нее, без встроенных ПЗУ и дискет с готовым про­граммным обеспечением. Включив свою покупку, он сразу убедится,

что ее можно использовать только в качестве элемента совре­менного интерьера, но не как вычислительную машину. Невозмож­но занести самостоятельно написанную даже в двоичных кодах программу в оперативную память, невозможно запустить програм­му на выполнение, невозможно отобразить результат на экране дисплея или записать на дискету. Такая машина бесполезна. Без программного обеспечения микроЭВМ — набор никому не нужных микросхем и механизмов. Однако верно и обратное — программное обеспечение без аппаратуры тоже совершенно бесполезно.

Программное обеспечение (ПО, software) в самом общем смысле есть организованная совокупность (набор, комплект) данных и обрабатывающих программ, которые реализуются на вычислительной машине. Программное обеспечение разделяется на системное и при­кладное, причем обычно в системном ПО выделяются операционные системы и системы автоматизации программирования. Отметим три взаимодополняющих класса ПО микроЭВМ (рис. 6.1):

операционные системы;

системы автоматизации программирования, разработки и от­ладки программ;

пакеты прикладных программ.

6.1. Операционные системы

Операционная система (ОС, operating system, OS) — это сово­купность программ, предназначенная для организации вычисли­тельного процесса при функционировании микроЭВМ [1.27]. ОС осуществляет две основные функции. Первая — система обеспечи­вает интерфейс пользователь-аппаратура, поддерживая прием при­казов пользователя, их исполнение, формирование и выдачу поль­зователю сообщений о результатах работы и состоянии вычислитель­ной системы в целом и отдельных ее элементов. Вторая — управ­ляет аппаратно-программными ресурсами вычислителя: оперативной и внешней памятью, виртуальной памятью, процессором, системой прерывания, устройствами ввода-вывода, файловой системой.

Классификация и характеристики ОС микроЭВМ [2.9, 2.10]. Операционные системы поставляются пользователям записанными на некоторый носитель. По типу носителя ОС микроЭВМ можно разделить на дисковые (ДОС, disk operating system, DOS), кассет­ные или магнитоленточные и записанные в ПЗУ или ППЗУ. Послед­ний тип ОС — это фактически и программное и аппаратное обеспе­чение одновременно. Для обозначения такого «гибридного» изделия часто используется термин firmware (жесткий продукт). Для про­стейших микроЭВМ (встраиваемых, одноплатных, домашних персо­нальных) ОС обычно поставляется в ПЗУ или, реже, на магнитной ленте. Практически все микроЭВМ, имеющие в своем комплекте дисковые накопители, снабжаются дисковыми операционными си­стемами. Все ДОС микроЭВМ состоят из двух основных частей. Первая часть — ядро операционной системы — программы и дан­ные, которые при включении машины загружаются из накопителя в оперативную память и постоянно находятся в ней, пока система функционирует. Эта часть называется также резидентной в опера­тивной памяти. Программы ядра включают драйверы использу­емых устройств ввода-вывода, объединенные в основной блок ввода-вывода (BIOS — basic input-output system) и базовые подпрограммы файловой системы (BDOS — basic disk operating system). Рези­дентная часть поддерживает также связь с пользователем и выполнение встроенных (основных, внутренних) директив (команд) пользователя. Вторая часть—расширения ОС—программы опе­рационной системы, которые вызываются пользователем при не­обходимости и только в этом случае загружаются в оперативную память. Директивы вызова таких программ ОС называют транзит­ными (внешними, перемещаемыми). Сами программы также назы­ваются транзитными, используется также термин утилита для обо­значения таких внешних программ. Список встроенных и транзит­ных директив и возможности соответствующих программ являются важнейшими характеристиками операционных систем.

Классифицируя ОС микроЭВМ по областям применения, выде­ляют три группы систем. К первой группе относятся ОС общего назначения (general overlays), предназначенные для обслуживания пользователей, которые не разрабатывают собственные программы, а используют готовые пакеты программ. Вторая группа включает проектные (development) ОС, ориентированные на разработчиков программного обеспечения как прикладного, так и системного. Тре­тья группа — операционные системы реального времени (real-time system), которые работают в вычислительных системах с жесткими временными ограничениями, например, в системах управления ре­альными процессами или объектами.

Если операционная система ориентирована на работу с одним пользователем, то она называется однопользовательской (single-user). Если ОС поддерживает работу нескольких пользователей, позволяя им одновременно выполнять свои программы, то она от­носится к классу многопользовательских (multi-user) ОС. Ряд ОС микроЭВМ разрешают пользователю (одному!) запускать на исполнение одновременно несколько заданий, например, первое — оттранслировать программу с языка высокого уровня, второе — распечатать содержимое некоторого дискового файла, третье — вводить текстовый файл с клавиатуры. Многозадачная (multitasking) ОС организует работу машины таким образом, что пользователь будет считать выполнение всех этих заданий одновременным. Для многопользовательских ОС главной характеристикой являет­ся максимально допустимое количество одновременно работающих пользователей, для многозадачных ОС — максимальное количе­ство заданий, которое пользователь может одновременно запустить на выполнение. Отдельные операционные системы микроЭВМ со­держат средства обмена файлами с другими вычислителями, под­ключенными к системе связи. Такие ОС относят к классу сетевых (network OS).

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

При работе с микроЭВМ пользователь все свои программные материалы (тексты программ, объектные и двоичные коды программ, численные данные, текстовые данные и тому подобное) хранит в виде файлов (file — организованный набор данных) на внешнем ЗУ. Потребительские свойства ОС во многом определяются возможностями принятой системы управления файлами, от которой зависит, насколько удобно пользователю манипулировать с наборами данных. Существенным для пользователя является также объем оперативной памяти, занимаемой резидентной частью ОС, и типы микропроцессоров (или микроЭВМ), на которых возможна ее реализация. Характеристики ряда распространенных ОС микроЭВМ приве­дены в табл. 6.1. Следует отметить, что для персональных ЭВМ пред­лагается более сотни различных ОС [2.10], однако наиболее популярными являются ОС одного из трех «кланов»: СР/М фирмы Digital Research, MS-DOS фирмы Microsoft и UNIX фирмы Bell Laboratories.

Операционная система СР/М [1.10, 1.31]. Семейство ОС СР/М (Control Programm for Microprocessor — управляющая программа для микропроцессоров) порождено операционной системой СР/М-80, разработанной фирмой Digital Resarch в 1976 году для микроЭВМ на базе МП Intel 8080 или Zilog Z80. ОС СР/М-80 стала стандартной для 8-разрядных микроЭВМ. Практически все изготовители 8-раз­рядных машин снабжают свои изделия той или иной версией этой операционной системы. Для 16-разрядных микроЭВМ операционные системы клана СР/М (СР/М-86) не стали популярными, хотя и имеют достаточно широкое распространение, так как обеспечивают пере­нос богатого программного обеспечения 8-разрядных ЭВМ.

Операционная система СР/М-80 ориентирована на нужды поль­зователей средней квалификации. Она поддерживает разработку и отладку программ невысокой сложности, редактирование и хране­ние файлов. Структура СР/М-80 и ее отображение на пространство памяти (64 Кбайт для 8-разрядных МП) показана на рис. 6.2,а. Операционная система включает:

BIOS (Basic Input/Output System—базовая подсистема ввода-вывода), комплект программ-драйверов, обеспечивающих обмен информацией с дисковыми запоминающими устройствами, стан­дартными устройствами ввода-вывода (дисплей, принтер, модем, телетайп) и устройствами пользователя. В некоторых машинах часть BIOS поставляется записанным в ПЗУ;

BDOS (Basic Disk Operating System — базовая дисковая опера­ционная система), комплект программ, поддерживающих управление

накопителями на магнитных дисках. В BDOS принята стратегия распределения дисковой памяти, минимизирующая время обращения к накопителю. На каждой дискете хранится справочник диска (каталог), в котором помещается полная информация о файлах, записанных на диске;

ССР (Console Command Processor - программа управления консолью), обеспечивает прием с дисплея Директив (команд) пользо­вателя и организацию их выполнения с помощью BIOS и BDOS;

ТРА (Transient Programm Area - область транзитных программ), область памяти, в которую для выполнения записываются транзитные программы и/или программы пользователя.

При выполнении программ в ТРА области BIOS, BDOS и ССР могут использоваться для хранения данных, т. е. программа может затереть резидентную часть ОС полностью или частично. Как правило, в BDOS сохраняется специальная программа реинициализации (warm boot), с помощью которой после завершения работы транзитной или пользовательской программы происходит автоматическое восстановление в памяти BIOS, BDOS и ССР. Пользователь может продолжать работу с СР/М так, как если бы она оставалась резидентной в памяти.

ОС СР/М поддерживает работу четырех дисковых накопителей. Накопители идентифицируются латинскими буквами А, В, С, D. Дискета с операционной системой должна находиться на накопи­теле А. Все файлы, записанные на Дековых накопителях, идентифицируются с помощью уникального имени файла. Имя файла состоит из двух частей, собственного имени (1-8 символов) и расширения - суффикса (3 символа), разделенных точкой. В именах файлов, указываемых в директивах пользователе, допускается использование метасимволов «?» и «*». Первый метасимвол заменяет один символ в имени файла. Второй метасимвол заменяет имя или расширение Использование метасимволов облегчает доступ пользователя к группе файлов, уникальные имена которых получаются заменой метасимволов произвольными буквами. Суффикс имени указывает на тип файла, его применение необязательно. Существует ряд общепринятых суффиксов. Например, файлы содержащие тексты программ на языке Ассемблера, имеют суффикс ASM. После трансляции создаются файлы, содержащие шестнадцатеричные коды программ. Имена таких файлов имеют расширение НЕХ. Полностью подготовленные к исполнению программные файлы указываются суффиксом СОМ.

Имена и параметры всех файлов, записанных на дискете, хранятся в специальном файле-справочнике, который также записан на дискете. Если дискету используют несколько пользователей, то для каждого выделяется личный справочник, в который заносится информация только о собственных файлах конкретного пользователя. Операционная система имеет 6 встроенных директив и более 20 транзитных. Встроенные директивы обеспечивают минимальные возможности работы с ОС (просмотр справочников, отображение текстовых файлов, уничтожение и переименование файлов, назначение пользователя и сохранение данных). Тран­зитные команды вызывают на исполнение специальные программы (с суффиксом СОМ), которые выполняют самые разнообразные дей­ствия. Важно, что пользователь сам может создать программу с расширением СОМ и, следовательно, по своему желанию допол­нить список директив и функций операционной системы. Необхо­димо иметь в виду, что для ОС семейства СР/М сторонними фирмами разработана масса программ (системные программы, трансляторы, отладчики, прикладные программы), которые по сути своей, также расширяют возможности операционной системы. При необходимо­сти подробно ознакомиться с операционной системой СР/М-80 и ее модификациями, рекомендуем обратиться к [1.31], где также приве­дена обширная библиография.

Операционная система MS-DOS [1.34, 3.16]. Операционная система MS-DOS разработана в 1981 г. фирмой Microsoft для 16-раз­рядных микроЭВМ. Ее модификация PC-DOS была принята фирмой IBM как основная ОС для семейства машин PC. Считается, что MS-DOS стала фактическим стандартом на операционные системы для 16-разрядных ПЭВМ.

MS-DOS в исходной версии относится к классу однопользо­вательских, однозначных ОС. Она во многом аналогична СР/М, но на 16-разрядном уровне. В ней совпадает часть команд пользова­теля. MS-DOS также поддерживает работу четырех накопителей на гибких и/или жестких магнитных дисках, имеет развитую файловую систему с аналогичными но структуре именами фай­лов. В отличие от СР/М MS-DOS обеспечивает многоуровневую древовидную структуру справочников. В системе различаются основной (корневой, root) справочник и подчиненные справочники. Справочник в MS-DOS — это файл специального типа, в котором хранится информация (имя, размер, расположение на дискете, дата создания или последней ревизии) о всех файлах, относящихся к это­му справочнику. В корневом справочнике могут быть ссылки на несколько подчиненных справочников, в которых также могут быть ссылки на подчиненные справочники, и так далее. Такое «опрокину­тое дерево» справочников упрощает структурную организацию больших наборов файлов, облегчает их поиск. Для работы с под­чиненными справочниками в MS-DOS предусмотрено 5 директив пользователя, которые позволяют создать справочник, уничтожить его, отобразить на экране дисплея дерево справочников. Особую роль играет директива CHDIR, с помощью которой пользователь как бы путешествует по дереву, переходя от одного справочника к другому. Находясь в некотором справочнике («текущем» в терми­нологии MS-DOS), пользователь имеет доступ только к файлам, указанным в этом справочнике. Для доступа к другим файлам в его распоряжении имеется аппарат маршрутизации (директива PATH и/или расширение имени файла списком справочников), который задает системе разрешенные переходы по дереву справочников.

ОС MS-DOS предоставляет пользователю широкие возможности по организации пакетного выполнения директив. Часто возникает необходимость многократно выполнять определенную последова­тельность операций. Например, вызвать транслятор с языка высокого уровня, обратиться к редактору связей, назначить устрой­ства ввода и вывода и запустить программу на выполнение. Дирек­тивы, задающие указанные действия, можно объединить в спе­циальный файл с суффиксом ВАТ(/ВАТСН — пакет). Вызывая такой пакетный файл на исполнение, пользователь заставляет систе­му автоматически выполнить записанные в указанном пакете дирек­тивы. Такая возможность предусмотрена и в СР/М (директива SUBMIT), однако в MS-DOS она значительно шире, так как с по­мощью специальных команд обеспечиваются безусловные и услов­ные переходы в последовательности (GOTO, IF) и даже организация циклического повторения директив (FOR). Предусмотрено создание специального файла с именем AUTOEXEC.BAT, в который пользо­ватель может занести все директивы, необходимые для начала рабо­ты с системой. Обычно указываются директивы задания даты и те­кущего времени, выдачи каких-либо специальных сообщений. После загрузки MS-DOS всегда ищет файл AUTOEXEC.BAT в корневом справочнике и, если находит его, запускает на исполнение. Таким образом, при пуске всегда будет выполняться заданная пользова­телем последовательность установочных директив.

В MS-DOS имеется пять специальных директив, которые можно увязывать в особом конфигурационном файле с именем CONFIG. SYS. Этот файл, если он создан пользователем, подобно AUTOEXEC. ВАТ автоматически вызывается на исполнение при запуске системы. С помощью этих директив выполняются назначения параметров системы: способ прерывания программ (BREAK), длина буфера для обмена с дисковыми накопителями (BUFFERS), подключение драйверов пользователя (DEVICE), максимальное количество одно­временно открытых файлов (FILES), подключение дополнительного командного процессора (SHELL). Последняя директива позволяет пользователю вводить собственную систему директив и указывать способы их обработки.

Отображение MS-DOS на оперативную память иллюстрируется рис. 6.2, б. Как и в СР/М, все аппаратно зависимые программы (драй­веры УВВ) сосредоточены в базовой системе ввода-вывода BIOS. Затем в памяти располагаются программы базовой дисковой систе­мы и, так называемый, «ЕХЕС — процессор», обеспечивающий вы­полнение директив пользователя. Связь с оператором поддерживает специальная программа — командный процессор (COMMAND.COM), которая интерпретирует все директивы пользователя. Ко­мандный процессор состоит из двух частей: резидентной, постоянно находящейся в памяти, и загружаемой, которая при необходимости считывается с диска. Загружаемая часть командного процессора, как и любые транзитные команды и программы пользователя, разме­щаются в конце (в старших адресах) ОЗУ.

ОС MS-DOS непрерывно совершенствуется. В 1986 г. была выпу­щена многозадачная сетевая версия MS-DOS 4.0. Сейчас предла­гается версии MS-DOS которые ориентированы на МП 80286 и 80386 (машины IBM PC AT, IBM PS/2) и функционирует в много­задачном, многопользовательском режиме.

Операционные системы типа UNIX [1.3, 2.7]. Операционная система UNIX первоначально была разработана фирмой Bell Te­lephone Laboratories для миниЭВМ системы PDP—11 (System 3, System 5). Другая версия ОС UNIX была предложена университе­том г. Беркли (США) для миниЭВМ семейства VAX (Berkelly UNIX). Оба варианта — это многопрограммные, многопользова­тельские ОС, ориентированные на высококвалифицированных про­граммистов, работающих в областях исследования и создания боль­ших программных систем. ОС поддерживает иерархическую древо­видную файловую структуру, асинхронное создание процессов, раз­витую систему приоритетов и обладает высокой мобильностью, так как написана на языке СИ, и поддерживает переносимость разра­ботанных программ.

С учетом высокой популярности ОС UNIX для мини-ЭВМ, разработано не менее двадцати «UNIX-подобных» систем для 16-разрядных микроЭВМ. Среди таких ОС следует отметить систему Xenix фирмы Microsoft и систему PC/IX фирмы IBM, которые реа­лизуются на микроЭВМ IBM PC/AT. В этих ОС значительно усо­вершенствован интерфейс пользователя с системой по сравнению с исходными версиями UNIX, приняты специальные меры для уменьшения количества обращений к дискам при работе с несколь­кими пользователями. Система Xenix состоит из трех основных частей: диспетчера разделения времени, системы обработки текстов и системы подготовки программ. Диспетчер содержит ядро ОС и си­стемные утилиты, обеспечивая все функции организации вычисли­тельного процесса. Две другие части ОС поставляются отдельно, по запросам пользователя. Положительной чертой ОС Xenix является то, что она совместима по структуре файлов с MS-DOS, что значительно облегчает перенос программ и расширяет круг доступных программных изделий.

Отмечается также ряд недостатков «UNIX-подобных» ОС для микроЭВМ: критичность к ошибкам пользователя, требование высо­кой квалификации программистов, сложность освоения, большая емкость ОЗУ, необходимая для постановки ОС. Все это делает проблематичным широкое использование таких ОС для персональ­ных вычислений, оставляя для них область многопользовательских микро- и минисистем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]