Прерываемая команда - Большая Энциклопедия Нефти и Газа, статья, страница 1
Если тебе завидуют, то, значит, этим людям хуже, чем тебе. Законы Мерфи (еще...)

Прерываемая команда

Cтраница 1


Прерываемая команда [ restartable instruction ] - команда, выполнение которой может быть приостановлено при возникновении прерывания и продолжено после его обработки.  [1]

Выполнение прерываемой команды завершается, когда завершаются все элементы операции, связанные с этой командой. Когда прерывание происходит после завершения, аннулирования или подавления некоторого элемента операции, все предшествующие элементы операции уже завершены.  [2]

3 Распознавание особых случаев доступа. [3]

Выполнение прерываемых команд СРАВНЕНИЕ ЛОГИЧЕСКОЕ ДЛИННОЕ и ПЕРЕСЫЛКА ДЛИННАЯ начинается, если только нет особых случаев доступа, связанных с обращением к таблицам динамической переадресации в пределах страниц, содержащих начало обоих операндов. Кроме того, начало операции может также зависеть от наличия особых случаев, связанных с обращением к таблицам в пределах вторых страниц каждого операнда.  [4]

Выполнение прерываемых команд ПЕРЕСЫЛКА ДЛИННАЯ и СРАВНЕНИЕ КОДОВ ДЛИННОЕ может вызвать события, заключающиеся в изменении содержимого общих регистров или в выборке команды. Кроме того, при выполнении команды ПЕРЕСЫЛКА ДЛИННАЯ может иметь место событие, состоящее в изменении содержимого памяти.  [5]

Если при выполнении прерываемой команды имеют место условия прерывания ввода-вывода, внешнего прерывания или прерывания от схем контроля, то прерывание, вызываемое наступлением программного события, происходит первым, а возможность прерываний ввода-вывода, внешнего прерывания или прерывания от схем контроля определяется битами масок в новом PSW. Аналогично, если во время выполнения прерываемой команды процессор должен перейти в состояние стоп, но уже возникло условие прерывания по программному событию, то это прерывание произойдет до перехода в состояние стоп. Если возникает особый случай при динамической переадресации и имеется еще не обработанное условие прерывания по программному событию, то оно указывается вместе с условием, возникшим при переадресадии. Обычно программное событие не вызывает прерывания выполнения команды, которая является прерываемой, если нет какого-либо другого условия, вызывающего асинхронное прерывание. Однако на некоторых моделях в определенных ситуациях программное событие может прервать выполнение такой команды даже при отсутствии условия асинхронного прерывания или особого случая в программе.  [6]

Когда при выполнении прерываемой команды элемент операции прекращается, содержимое всех полей, которые должны быть изменены этой командой, вообще говоря, является непредсказуемым. После прерывания адрес команды в старом PSW указывает на команду, расположенную непосредственно за прерванной командой.  [7]

Когда при выполнении прерываемой команды происходит прерывание для регистрации программных событий, в коде длины команды указывается либо длина данной команды, либо длина команды ВЫПОЛНИТЬ, с помощью которой выполняется данная команда.  [8]

Для некоторых команд, называемых прерываемыми командами, прерывание разрешено после частичного выполнения команды. Считается, что выполнение прерываемой команды складывается из выполнения ряда элементов операций, и процессору разрешается производить прерывания между этими элементами.  [9]

Если операция или ( в случае прерываемой команды) элемент операции подавляется или аннулируется, то указание о переходе и изменении содержимого памяти или общего регистра не делается.  [10]

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

С-операция или часть операции ( в случае прерываемой команды) завершается.  [12]

С-операция или элемент операции ( в случае прерываемой команды) завершается.  [13]

Прерывание, вызываемое событием в программе, происходит до завершения выполнения прерываемой команды.  [14]

Обычно не следует также допускать, чтобы сама команда ВЫПОЛНИТЬ была расположена в ячейке результата прерываемой команды, на которую она указывает, так как для возобновления выполнения может потребоваться повторная выборка и расшифровка команды ВЫПОЛНИТЬ.  [15]



Страницы:      1    2