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

Организация работы ЭВМ при выполнении задания пользователя

(обработка заданий операционной системы)

Организация процессов ввода, преобразования и отображения результатов относится к сфере системного программного обеспечения. Это сложные процессы, они незаметны для пользователя. Один из них – реализация задания пользователя. Профессиональный пользователь (программист) пишет задание для ЭВМ в виде программы на алгоритмическом языке. Написанное задание (программа) представляет собой исходный модуль, сопровождаемый управляющими предложениями, указывающими операционной системе ЭВМ, на каком языке написана программа и что с ней делать. Если программа пишется на алгоритмическом языке, то управляющие предложения – на языке управления операционной системой (например, язык команд DOS, в MS DOS IBM PC).

Исходный модуль перед исполнением должен быть переведён на внутренний язык машины. Эта операция выполняется специальной программой – транслятором (см. рис.). Трансляторы выполняются в виде двух разновидностей: интерпретаторы и компиляторы. Интерпретатор после перевода на язык машины каждого оператора алгоритмического языка немедленно исполняет полученную машинную программу. Компилятор же сначала полностью переводит всю программу, представленную ему в виде исходного модуля (ИМ) на язык машины. Получаемая при этом машинная программа представляет собой объектный модуль (ОМ). Результат работы компилятора может быть записан в библиотеку объектных модулей (БОМ) или передан другим программам для дальнейшей обработки, поскольку полученная машинная программа не готова к исполнению по двум причинам. Во-первых, она содержит неразрешённые внешние ссылки (т.е. обращение к программам, которые не содержатся в исходном модуле, но необходимы для работы основной программы, например к стандартным программам алгоритмического языка, таким как извлечение , вычисление тригонометрических функций).

Рис. 4.1. Обработка заданий операционной системой

Во-вторых, объектный модуль представляет собой машинную программу в условных адресах – каждый объектный модуль начинается с адреса 0h, тогда как для исполнения программа должна быть “привязана” к конкретным физическим адресам основной памяти.

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

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

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

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

4.3. Последовательный и параллельный интерфейсы

В состав микропроцессорного комплекта входит большая интегральная схема УСАПП (универсальный синхронно-асинхронный приёмопередатчик) или UART (Universal Asynchronous Receiver Transmitter), предназначенная для реализации интерфейса типа RS-232 (V24).

УСАПП является программируемой микросхемой, преобразующей параллельный код, получаемый от шины данных системной магистрали, в последовательный для передачи по двухпроводной линии связи. В качестве УСАПП используются БИС i8250, i16450, i16550A и др. Функции, выполняемые этими микросхемами, одинаковы. Различия заключаются в обеспечиваемом ими быстродействии.

Типовая структурная схема УСАПП приведена на рисунке. От МП передаваемый байт данных поступает по шинам данных в буфер данных УСАПП на входной регистр, затем через внутреннюю шину передаются в регистр передатчика. В момент передачи содержимое регистра передатчика серией сдвигов выдвигается в канал с преобразованием в последовательный код.

В синхронном режиме передаваемые данные сопровождаются упрвляющими сигналами, называемыми синхронизирующими словами (СС). Для хранения СС используются специальный регистр синхронизирующего слова на входе УСАПП и регистр состояния – на выходе (РгС). Из HuC информация в виде байта состояния передётся в МП по его запросу.

Устройство управления (УУ) содержит регистр режима (РгР), предназначенный для хранения передаваемой из МП информации о режиме работы, и регистр команд (РгК), для хранения принимаемой из микропроцессора команды на обмен данными.

Передаваемый последовательный код перед выходом из передатчика УСАПП в линию связи комплектуется управляющими сигналами, необходимыми для настройки приёмника. После такого укомплектования образуется кодовая посылка со структурой, изображённой на рисунке.

С труктурная схема усапп

К одовая посылка УСАПП

Старт-бит всегда имеет единичное значение, отличное от состяния «молчащего» канала.вслед за старт-битом расположены информационные биты, принятые от шины данных системной магистрали. В зависимости от настройки УСАПП в одной посылке может содержаться от 5 до 8 информационных битов. Значение этих битов в каждой посылке непредсказуемо. В процессе передачи они могут быть скажены помехами. Поэтому в посылке должны содержаться не только биты, говорящие о начале и конце посылки, но и биты для контроля правильности передачи.

В качестве контрольного выступает бит паритета, следующий сразу вслед за информационными битами. С помощью бита паритета осуществляется контроль на чётность или нечётность. При контроле на чётность сначала подсчитывается количество единиц в информационной части посылки, затем определяется, чётное оно или нет. Если полученное число нечётное, бит паритета устанавливается в «1», в этом случае в правильно переданной посылке всегда будет содержаться чётное количество единиц. При контроле на нечётность бит паритета устанавливается так, чтобы общее количество единиц было всегда нечётным.

При программировании УСАПП программист выбирает, использовать режим контроля или отказаться от него. При отказе бит паритета всегда будет нулевым. При выборе вида контроля учитывается характер возможных помех.

Если воздействие возможных помех будет проявляться преимущественно в появлении лишних единиц, необходим контроль на чётность. Если же воздействие помех будет проявляться преимущественно в исчезновении единиц, то необходим контроль на нечётность (чтобы отличить передавемый «0» от полной потери информации из-за помех).

После бита паритета в кодовой посылке следуют стоп-биты. Для стоп-битов в кодовой посылке отводится два двоичных знакоместа. Если выбран режим «1 стоп-бита», то после бита паритета всегда (в каждой посылке) будет следовать комбинация 01. Если выбран режим «1.5 стоп-бита», то после бита паритета всегда будет следовать комбинация 10. Если же выбирается режим «2 стоп-бита», то каждая посылка будет завершаться цифрами 11.

В УСАПП-приёмнике поступившая от канала связи кодовая комбинация проверяется в соответствии с установленным заранее режимом контроля (на чётность или нечётность), освобождается от управляющих сигналов и передаётся в шину данных системной магистрали параллельным кодом.

Настраиваться УСАПП-приёмник и УСАПП-передатчик, работающие в паре, должны согласованно.

Приграммирование УСАПП может вестись на физическом или логическом уровне. Программирование на физическом уровне производится на языках низкого уровня или в машинных кодах. Логический уровень программирования обеспечивается алгоритмическими языками высокого уровня, коммуникационными программами, некоторыми пакетами прикладных программ.

Параллельный интерфейс представлен в микропроцессорном комплекте микросхемой типа i8255 – программируемым параллельным адаптером.

Микросхема подключается к системной магистрали ЭВМ (к ШД, ША, ШУ) и имеет три независимых канала для подключения внешних устройств. Внутренний блок управления позволяет программировать каждый канал на ввод или вывод информации по 8 линиям, т.е. 8 бит параллельно.