Файл: Богданов В.С. Системы математического обеспечения цифровых вычислительных машин учеб. пособие.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.08.2024
Просмотров: 57
Скачиваний: 0
- IOI
14Состояние "ожидания"
15Состояние "задача"
16 |
- |
31 |
Код .прерывания |
32 |
- |
33 |
Код длины команды |
3 4 |
- 3 5 |
Признак результата |
36Маска переполнения с фиксированной запятой
37Маска десятичного переполнения
38Маска исчезновения порядка
39Маска значимости
40 - 63 |
Адрес команды |
'нстемы ЭВк могут находиться б двух состояниях: "систе мы” и "работы". При работе супервизора ЭБМ находится в сос тоянии "система". При этом возможны использование привилеги рованных команд и доступ к любой ячейке памяти. Если произво дится не управление работой ЭВМ, а решение задачи, то ЭВМ на ходится в состоянии "задача".
і . |
§ 3. Назначение управляющих программ |
|
математического обеспечения |
|
Управляющие программы, организующие работу всей системы |
в делом, делятся на три основных класса: главный диспетчер, диспетчер заданий и супервизор.
Супервизор осуществляет централизованное управление всей работой ЭВМ. Он выполняет следующие функции: распределе ние главной памяти, управление счетом отдельных задач; ввод
- 102 -
программ в подготовленные участки памяти ; счет времени, под
готовка отчетной информации о загрузке ; наблюдение за работой
устройств ввода-вывода.
Супервизор вводится в действие каждый раз, когда имеет место сигнал прерывания и этот сигнал зафиксирован.
Ранее программисты широко использовали команду "останов по ключу", теперь для этой цели можно использовать команду "вызов супервизора",
Работает супервизор так. После получения незамаскирован ного сигнала прерывания текущее УСП выводится из активной
О
ячейки, а на его место ставится УСП супервизора. Операция эта осуществляется автоматически. Затем супервизор анализи рует причину прерывания и очередь других задач по параметрам: серьезность причины прерывания, объем работы для его обслу живания, состояние остальных задач; количество времени, ко
торое простояла в очереди каждая задача. В результате этого
принимается решение, какая из задач будет выполняться после
обслуживания прерывания, то есть соответствующее этой задаче УСП ставится на І-е место в очереди. После принятия решения
супервизор передает управление программе-диспетчеру. Програм
ма-диспетчер заданий имеет такие функции: |
|
|
- |
чтение и анализ заголовков заданий, |
|
- |
зыбор,соответствующего устройства ввода-вывода, |
|
- |
ввод в действие рабочих программ каждой |
задачи, |
. - запись результатов выполнения задания, |
|
|
„Программа - главный диспетчер представляет |
связывающее |
|
звено |
9 |
|
между ЭВМ и операторами. Эта программа по команде one- |
■ - юз
ратора может изменить состояние того или иного устройства ввода-вывода, порядок работы системы, затребовать ту или иную информацию о состоянии системы.
§ 4. Структура программ математического обеспечения и рабочих программ
\
Программа современной ВЦ состоит из одной или более
подпрограмм, называемых модулями. В соответствии со строени
ем их можно разоить на ряд подмножеств, |
или структур. |
|||
1. |
Простая |
структура, для которой |
программа состоит из |
|
одного |
модуля, |
целиком передаваемого |
в |
память. |
2. |
Составная структура, которая |
состоит из частей моду |
ля. Разбиение программы на части и порядок использования час тей указывается потребителем, В конце каждой части содержат ся сведения о том, какую часть следует выполнить вслед за данной.
3. динамическая последовательная' структура, при которой каждый очередной модуль программы вызывается по специальной команде, содержащейся в предыдущем модуле. Переходы от модуля к модулю организуются управляющей системой. Для этой цели предусматривается обычно несколько макрокоманд. Макрокоман да СВЯЗАТЬ содержит в качестве параметра наименование вызы ваемой программы и вводит в действие некоторую стандартную . подпрограмму, одной из команд которой является команда ВЫЗОВ СУПЕРВИЗОРА. Супервизор отыскивает свободное место в главной
памяти и вызывает на это место нудную программу. ■»ä—-
- 104 -
Макрокоманда ВОЗВРАТ стоит в конце каждого модуля и осу ществляет переход к стандартной подпрограмме, которая знгсдкпет вое действия по возврату к ранее имеющейся точке раз то т- вления. На_рис. 9 показана работа программ с последовательной структурой.
X |
|
|
!' |
А |
1 |
___В_ |
заголовок |
1 |
|
Заголобок |
|
Заголовок |
|
Ѵ» |
'*м |
і / |
ЛöArik* |
— ■#*^ft?ftА/) |
||
связать А |
|
связать 3 |
■ А |
— |
||
|
|
А |
■ |
|
|
|
сёязатьВ ("А |
|
|
|
|||
|
|
•1\ |
і---- 1Возврат |
|||
\Ьозорот |
|
I |
\ Возврат |
|||
|
|
|
1 |
|
I |
|
|
|
|
I___________________ j |
|
||
|
|
|
|
Рис. 9 |
|
|
4 . |
дг.-.аккческая параллельная |
структура. |
При ее органи |
|||
ции используется команда ПРИВЯЗАТЬ, которая организует зада |
||||||
чу таким образом, что она может выполняться параллельно с |
||||||
другой задачей, |
если имеется в наличии достаточное число |
|||||
средств. |
|
|
|
|
|
|
Организация выполнения задания возлагается на програм му-диспетчер заданий,.которая оформляет каждый этап задания в виде самостоятельной задачи. После того как задача пол ностью оформлена, организацию ее выполнения берет на себя программа низшего ранга, называемая монитором.
rJ5 -
Длспетчетэ заданий может осуществлять управление выпольеиней задания ляоо в режиме последовательного планирования,ля-
<5о з режиме приоритетного планирования.
3 псовом случае диспетчер просматривает заголовки этапов
задания в их естественной последовательности, а во втором фор-
ійрукт из тік очередь. При формировании очереди учитываете;: информация, содержащаяся в. заголовке. Отметим, что диспетчер
заданий состоит из управлявших программ трех основных типов: программы чтения - интерпретации, программы начала - оконча
ния л программы записи.
Эти программы обеспечивают интерпретация информации, за писанной в задании, выбор нудного места памяти, устройств ввода-вывода и т .д .
После того как подготовка заданий окончена, супеттч? ді
по запросу диспетчера передает управление специальной ггб'іяр,**
граниой монитору |
задачи. |
|
|
|
Монитор задачи обеспечивает правильное и эффективное |
||||
|
|
|
‘ •ч |
|
решение задачи от начала вызова заголовка до вывода резуль |
||||
татов |
на одно из |
устройств |
вывода. |
^ |
3 |
заключение |
еще раз |
сформулируем те идеи~й~принпнпп, |
которые доложены в основу управляющих программ системы матепанического обеспечения
Прежде зсего_>_евтліотребителя, задавшего работу ЭВМ, тре_буется лпііь минимум сведений.. Потребитель запзсазает заголов ки задания, заголовки этапов и описание данных. На основе этих данных ЭВМ самостоятельно формирует управлявшее слово программы, управляемой блок задач::, управлявший блок массива
- ІОб - данных, блок управления действиями.
Цель, в соответствии с которой строится система матема тического обеспечения, - ч наибольшей степени автоматизировать -роцесс решения задачи к свести вмешательство оператора в этот процесс к минимуму.
Бея система управляющих программ строится как иерархичес кая организация, в которой сравнительно небольшое число прог рамм имеет непосредственный доступ к рабочим программам и другим данным выполняемых задач. Это, в основном, программы, вводимые в действие различными макрокомандами. Более высокий ранг занимают мониторы и диспетчеры, которые осуществляют под готовку необходимых условий для решения задач.
Ra этом уровне вводится широко развитая система взаим ного контроля. На самой вершине иерархической пирамиды управ ляющих программ находится программа-супервизор. Она оорабатывает по существу УСП различных задач. Результатом такой обра ботки является вызов и введение в действие одной из управляю щих программ более низкого ранга.
Иерархическая структура системы позволяет легко заменить отдельные управляющие программы, не нарушая общей организации системы. ■"
Рассматриваемые выше программы образуют так называемую главную операционную систему. Помимо нее, в состав системы математического обеспечения входят несколько частных операци онных систем. Наибольший 'интерес представляют программы, уп равлявши: работой каналоЕ.
Еаш^ый канал является самостоятельной вычислительной ма~
- 107 -
шиной, имеет свой наоор команд и работает независимо от других устройств ЭВМ.
Канал может быть полностью независимым от данной ЭВМ, а может и "арендовать" технические средства у самой ЭВМ, то есть
в последнем случае операции канала выполняются тем не централь
ным процессором, что и все остальные в ЭВМ.
Ко работа канала совершенно не зависит от того, имеет лк
он свои технические средства или арендует |
их у ЭВМ. |
|
|
Операционная система каналов состоит |
из отдельных команд, |
||
стандартных программ, енодимых в действие |
макрокомандами, |
мо |
|
ниторов |
и диспетчеров. Есть у каналов сооственные управляющие |
||
слова, |
которые называются словами состояния канала (ССК). |
|
|
В |
состав супервизора операционной системы ЦВМ входят |
спе |
циальные команды, предназначенные для управления каналом: НА ЧАТЬ ВВОД, ОПРОСИТЬ КАНАЛ, СП^СЙТЬ ВВОД-ВЫВОД, ОСТАНОВЯТЪ
ВВОД-ВЫВОД. |
. . |
|
Программа-диспетчер каналов занимается, в основном, под |
||
готовкой! |
каналов к выполнению |
операций. Операции каналов в |
местных |
блоках управления выполняются под контролем программ- |
-моніиторов, которые могут формировать очередь сигналов пре рывания на уровне одного канала, составлять таблицу состояния внешних устройств для каждого местного управления и таблицу канала в целом.
Рассмотрим формирование рабочих программ каналов. В ГП хранится адресное слово канала (АСК). Оно имеет следующий формат:
|
|
|
|
- |
Разряд |
|
значения |
||
0 - 3 |
|
Клач |
защиты памяти |
|
4 |
- |
7 . |
Ноль |
|
8 |
- |
31 |
Адрес |
команды какала |
Ключ защиты памяти определяет участок главке;! памяти, оорапение к которому разселено при выполнении данной опера ции звода-зывода. ACS указывает ячейку, где находятся коман дное слово канала (КСй), лз которого к. составляется програмиа раооты данного канала. Лыеется иесть различных команд ка нала :
-прочитать,
-записать,
-прочитать б обратной направлении,
-управленце,
-уточнить состояние,
-переход б канале.
іОрнат KOS призедеа в таблице.
Разряд |
Значен ие |
0 - 7 |
Код операции |
8 - 3 1 |
Адрес данных, І-го байта массива |
32 |
Признак цепочных данных |
о 33 |
Признак цепочныха конанд |
|
34Признак блокировки записи в основную паиять
35Признак блокировки непрерывной длины
|
|
|
- IQS - |
37 - |
39 |
Нули |
|
40 |
- |
47 |
He используется |
48 |
- |
"3 |
Счетчик числа В (число байтов) |
Операционная система каналов строится на основе взаимо |
|
|
действия меіду управлявшими программами каналов и блоками |
^ |
|
справочной информации. |
|
|
Помимо программ, связанных с работой каналов,’ в состав |
|
|
системы математического обеспечения входят так называемые |
|
|
сервисные программы (делятся на программы обслуживания one-' |
|
|
рационной системы, программы обслуживания потребителей, про |
|
|
граммы обслуживания трансляторов и программы обслуживания |
|
|
технических средств (программы контроля а диагностики). |
|
|
Редактор программ оформляет всэ разнородную информацию |
|
|
з виде |
модулей. |
|
'Л, |
наконец, в состав математического обеспечения входя,- |
• |
программы-трансляторы, осуществляющие перевод с внешнего яд* - ка ЦВМ, и библиотека стандартных подпрограмм.
Далее рассматриваются некоторые особенности построения Трансляторов. В силу того', что в настоящее время, наиболее распространенным языком является АЛГШТ-60, ниже дается крат кий обзор разработанных з настоящее время трансляторов с кЛ-
§ 5. Методы трансляции с входных языков
Транслятор оо входного языка - программа, которая вое-