Cтраница 1
![]() |
Ст кт а системы п е ывания ( ежим основного управления. [1] |
Работа системы прерывания управляется общими синхросигналами процессора. [2]
![]() |
Структура системы прерывания ( режим основного управления. [3] |
Работа системы прерывания управляется общими синхросигналами процессора. Схема приоритетного выбора запроса класса прерывания ПКл, анализируя незамаскированные запросы, устанавливает 1 в соответствующий разряд регистра класса прерывания РгКл, в котором разряды 0 - 5 присвоены отдельным классам в порядке убывания приоритетов запросов прерывания. [4]
Разрешена работа системы прерывания после выполнения следующей команды. [5]
Запрещена работа системы прерывания непосредственно после данной команды. [6]
Ускорение работы системы прерывания - может быть достигнуто, если каждому источнику прерывания или группе источников поставить в соответствие свой индивидуальный адрес начала прерывающей программы и включить в состав машины специальную аппаратуру, которая при появлении запроса прерывания формировала бы соответствующий адрес перехода к прерывающей программе. Такой способ может быть назван аппаратным распознаванием ПРИЧИН Прерывания. [7]
Однако исследователя всегда интересует работа системы прерывания. Именно этим ( а также более компактной и удобной формой вывода) объясняется необходимость постановки и вывода меток для режима реального времени. [8]
Устройство прерывания программы обеспечивает работу системы прерывания, состоящей из восьми уровней. Каждый уровень прерывания может быть разрешен или запрещен программой. С помощью сигналов прерывания периферийные устройства могут прерывать текущую программу и возбуждать начало другой программы. Кроме того, прерывание может - быть осуществлено программами, управляющими работой выходных устройств. [9]
Программируемый контроллер прерываний КР580ВН59 обеспечивает различные режимы работы системы прерываний. Важно определить ее стандартный способ функционирования, для поддержки которого может быть использован ряд специальных системных подпрограмм нижнего уровня. В качестве последнего удобно выбрать широко используемый режим строгого вложения приоритетов. [10]
Все остальные разряды PSW так или иначе связаны с работой системы прерывания. Они либо фиксируют ситуацию, вызвавшую программное прерывание ( разряды 16 - 31), либо позволяют замаскироваться от каких-либо событий. Единица в соответствующем разряде бита маски означает, что прерывание по данному событию разрешено. Нулевое значение бита маски блокирует соответствующее прерывание. С помощью маски программы пользователя ( разряды 36 - 39) можно заблокировать некоторые программные прерывания. [11]
![]() |
Подпрограммы вложенных блокировок и разрешений прерываний. [12] |
Еще одна потенциальная возможность неработоспособности программы связана со способом, с помощью которого работа системы прерываний запрещается и вновь разрешается в подпрограммах, подобных INCHR и OUTCHR. Пусть в главной программе выполняются некоторые операции, критичные к синхронизации, при реализации которых в главной программе должны быть запрещены прерывания. Если же в это время в главной программе производится вызов подпрограмм INCHR или OUTCHR, то может оказаться, что система прерываний опять включена. [13]
В программах широко применяется прерывание. Для упрощения работы системы прерывания используются стеки. При работе с полями данных с целью упрощения операций преобразования вводятся операции маскирования, поворота, сдвига и циклического сдвига. [14]
Большинство команд, при выполнении которых аппаратура CPU обнаруживает ошибки, выполняются повторно. Процедуры повторного выполнения осуществляются совместно с работой системы прерываний от аппаратного контроля, которая обеспечивает запись ошибки или выполнение процедуры восстановления после ошибки во всех тех случаях, когда это требуется. [15]