Cтраница 2
Число переносимых байт является зависимой от устройства константой, устанавливаемой во время ассемблирования для субмонитора. [16]
Напечатать строку, содержащую параметры, передаваемые субмонитору, и адрес, откуда был сделав вызов субмонитора. [17]
Одной из особенностей способа распределения регистров в системе ХРЬ является то, что R 15 всегда содержит адрес точки вхождения в субмонитор. Оправдывают ли требования XPL-программы к субмонитору выделение общего регистра под адрес монитора. Изменения в схеме регистров влекут за собой изменения в субмониторе, в программе трассировки ( которая использует субмонитор для печатаемого вывода и для исполнительных команд и в ХСОМ. [18]
Сравнить счетчик псевдоячсек ( ILCR) с адресом точки вхождения в субмонитор Если они равны, перейти к программе обработки вызовов субмонитора. [19]
По окончании выполнения программы она возвращает управление субмонитору, дополнительно передавая при этом значение в ОС для использования его в качестве кода завершения Субмонитор высвобождает занимаемую программой память, закинвае. [20]
Как только считывание программы в память заканчивается, субмонитор передает ей управление и она начинает выполняться; В ходе выполнения программа может обращаться к субмонитору с запросами По окончании выполнения программы она передает управление субмонитору, который в свою очередь передает его ОС. [21]
Чтобы обеспечить адресацию и сделать трассировку возможной, было принято соглашение, что один регистр ( R15) всегда будет содержать адрес точки вхождения в субмонитор. Таким образом, к субмонитору всегда можно обратиться, используя общие регистры трассируемой программы, команда исполнения всегда имеет возможность адресации. Применение команды исполнения для выполнения большинства команд намного упрощает программу трассировки. [22]
Начав с написанной вручную на машинном языке программы ( в крайнем левом углу), посредством Ассемблера и загрузчика OS IBM / 360 мы получаем рабочую версию субмонитора. [23]
Одним из свойств ЯУЗ является его способность передавать параметры в загружаемую программу с помощью поля параметров ( PARM) оператора EXEC; Эти параметры могут изменять условия, установленные субмонитором для программы. [24]
Если ни операторы Я УЗ, ни информация, содержащаяся во внешнем файле, не дают атрибуты, то сообщаются значения, принимаемые по умолчанию, которые определяются при ассемблировании субмонитора. [25]
Процедуры call clock - trap ( пеъ пе2); call interrupt - trap ( пеъ ne-i); call monitor ( nex, net); представляют служебные запросы субмонитору и вызывают зависящие от субмонитора реакции. Для текущей версии субмонитора они не являются операциями. Автоматически вызываемая процедура переупаковки свободного участка памяти для строковых данных, когда его формирование уж. [26]
![]() |
Распределение регистров ХСОМ. [27] |
Имеющаяся память делится на две части; для кода программы и для данных, как показано в табл 8.4.2. Область кода программы делится еще на три части ( табл. 8.4.3): ассемблированный субмонитор ( см. приложение 1), ассемблированная подпрограмма трассировки ( см. приложение 2) и скомпилированное отображение XPL-программы. Регистр R14 указывает на начало скомпилированного кода программы и служит базой для всех переходов в пределах этой области. [28]
Как только считывание программы в память заканчивается, субмонитор передает ей управление и она начинает выполняться; В ходе выполнения программа может обращаться к субмонитору с запросами По окончании выполнения программы она передает управление субмонитору, который в свою очередь передает его ОС. [29]
Процедуры call clock - trap ( пеъ пе2); call interrupt - trap ( пеъ ne-i); call monitor ( nex, net); представляют служебные запросы субмонитору и вызывают зависящие от субмонитора реакции. Для текущей версии субмонитора они не являются операциями. Автоматически вызываемая процедура переупаковки свободного участка памяти для строковых данных, когда его формирование уж. [30]