- •Предисловие
- •Глава 1
- •1.1. Средства микропроцессорной вычислительной техники
- •1.2. Основные характеристики, место и классификация микроЭвм
- •1.3. Индустрия микропроцессорных средств вт
- •Глава 2 элементная база микроэвм. Микропроцессоры
- •2.1. Микропроцессорные бис
- •2.2. Микропроцессор 8086
- •2.3. Развитие семейства мп 8086
- •Глава 3 элементная база микроэвм. Микропроцессорные семейства бис
- •3.1. Сопроцессоры
- •3.2 Интегральные микросхемы памяти
- •3.3. Интерфейсные схемы, контроллеры
- •3.4. Схемы обрамления
- •Глава 4 магистрально-модульная организация микроэвм
- •4.1. Интерфейсы и магистрали микроЭвм
- •4.2. Магистрали типа Multibus
- •4.3. Интерфейсы периферийного оборудования
- •4.4. Конструктивные особенности микроЭвм
- •Глава 5 аппаратура микроэвм
- •5.1. Периферия микроЭвм
- •5.2. Аппаратура персональных микроЭвм
- •5.3. Модульные системы и одноплатные микроЭвм
- •Глава 6
- •6.1. Операционные системы
- •6.2. Средства автоматизации программирования
- •6.3. Пакеты прикладных программ
- •1. Монография я учебные издания
- •2. Периодические издания
- •3. Фирменные издания
- •Глава 1. Введение в микропроцессорную технику .............................. 5
- •Глава 2. Элементная база микроЭвм. Микропроцессоры ...................... 18
- •Глава 3. Элементная база микроЭвм. Микропроцессорные семейства бис ............................................................................................................................ 81
- •Глава 4. Магистрально-модульная организация микроЭвм ……………108
- •Глава 5. Аппаратура микроЭвм ............. ……………………………….148
- •Глава 6. Программное обеспечение микроЭвм ........................................187
Глава 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 Telephone 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-подобных» ОС для микроЭВМ: критичность к ошибкам пользователя, требование высокой квалификации программистов, сложность освоения, большая емкость ОЗУ, необходимая для постановки ОС. Все это делает проблематичным широкое использование таких ОС для персональных вычислений, оставляя для них область многопользовательских микро- и минисистем.