Cтраница 1
Субмонитор определяет, открьп ли файл, и если он не открыт, открывает его Индекс записи преобразуется в относительный адрес дорожки и выполняется макрокоманда POINT В зависимости от того, с какой стороны ( правой или левой) оператора присваивания появляется FILE, выполняется макрокоманда READ или WRITE, а макрокоманда CHECK выполняется для ожидания завершения операции; затем управление передается программе. [1]
При вызове субмонитор сначала определяет, специфицирует ли индекс действительный выходной файл; если нет, то выполнение программы заканчивается. Затем субмонитор определяет, открыт ли файл, и если файл закрыт го открывает его, после чего выполняется макрокоманда PUT p режиме указания. Операционная система возвращает адрес следующего выходного буфера, субмонитор перемещает выводимую запись в буфер, усекая или наращивая ее, как его было списано выше, и возвращает управление программе. [2]
Если вызовом субмонитора является запрос о начале трассировки. [3]
Средствами отладки обеспечиваемыми субмонитором, являются возможность доступа к программе трассировки ( см приложение 2) и во, можность разгрузки основной памяти. [4]
По окончании выполнения программы она возвращает управление субмонитору, дополнительно передавая при этом значение в ОС для использования его в качестве кода завершения Субмонитор высвобождает занимаемую программой память, закинвае. [5]
Напечатать строку, содержащую параметры, передаваемые субмонитору, и адрес, откуда был сделав вызов субмонитора. [6]
Как только считывание программы в память заканчивается, субмонитор передает ей управление и она начинает выполняться; В ходе выполнения программа может обращаться к субмонитору с запросами По окончании выполнения программы она передает управление субмонитору, который в свою очередь передает его ОС. [7]
Как только программа помещается в основную память, субмонитор загру-жае. Rl, R2 и R3 адресами вершин динамической области строк, первой записи кода и первой записи данных соответственно, а затем передает управление первой записи кода в точке за блоком управления. [8]
Действия, выполняемые программой при представлении запросов к субмонитору, очень просты В R1 загружается код обслуживания - небольшое целое число, используемое для выбора задачи, которую. Ассоциации между кодами обслуживания и задачами устанавливаются при ассемблировании субмонитора. Кроме того, эти ассоциации известны подпрограммам порождения кода в ХСОМ Список действительных кодов обслуживания приведен в габл. Во время запроса субмонитору может также передаваться до двух аргументов. Подробнее передача аргументов субмонитору рассматривается ниже. [9]
На основании информации, помещенной в блоке управления программы, субмонитор определяет, хватит ли программе имеющегося объема памяти. [10]
Сравнить счетчик псевдоячсек ( ILCR) с адресом точки вхождения в субмонитор Если они равны, перейти к программе обработки вызовов субмонитора. [11]
Оператор call trace, активизирует программу трассировки: инициирует передачу управления субмонитору, который в свою очередь передает управление программе трассировки. Субмонитор сообщает программе трассировки содержимое общих регистров во время вызова той программы и адрес в XPL-npo - грамме. [12]
![]() |
Отображение памяти XCOIW.| Структура объектной программы ХСОМ. [13] |
В блоке управления загрузкой содержится информация о размере программы, используемая субмонитором во время загрузки программы. [14]
В данном приложении описывается, как эти требования выполняются в программе XPL небольшой программой субмонитора. [15]