Скачиваний:
95
Добавлен:
09.05.2014
Размер:
812.03 Кб
Скачать

11.05.01.

Лекция №8

    1. Организация прерывания программ.

Назначение системы прерывания – это реагировать на определенные события, путем прекращения выполнения программы в момент окончания выполнения операции, записи в резидентную область ОП состояния прерывания программы и передачи управления программе – преемнику, адрес которой определяется после причины прерывания, оператор прерывания реализуется процессором, обеспечивающим переход от выполняемой программы к программе – преемнику.

Сигналы прерывания.

Причины прерывания принять подразделять на следующие группы:

  1. Внешние прерывания, соответствующие появлению сигналов от часов, таймеров, отсчитывающих промежуток времени, от других компьютеров, объединенных в единый комплекс и от кнопок, находящихся на пультах системных операторов.

  2. Прерывание от в/в, формируемое в момент окончания операции в/в или при возникновении особых ситуаций в работе в/в . К особым ситуациям относится неготовность ВУ к выполнению операции в/в или особые ситуации в работе ВУ (отсутствие бумаги в принтере и так далее).

  3. Программное прерывание, возникающее при выполнении программ в случае некорректного кода операции переполнения, потеря значимости и так далее.

  4. Прерывание при обращении к супервизору, формируемые для выполнения привилегированных операций, выполняемых только в состоянии супервизор. При обращении к супервизору указывается код причины прерывания, по которому происходит переход к программе – преемнику.

  5. Прерывание схем контроля, формируемые при нарушении верности информации, обрабатываемые процессором и ВУ.

Приоритеты прерываний.

Прерывания обрабатываются процессором по очереди и выполняются в момент окончания операции. За время выполнение команды может поступить несколько сигналов прерывания, которые обрабатываются в соответствии с приоритетами 1,2,…,J. Высший приоритет имеет наименьший номер. Высший приоритет присваивается сигналом от схем контроля.

Маскирование прерываний.

Отношение устройства прерывания к сигналам прерывания характеризуется маской M=m1m2…mLгдеmL - двоичный разряд, имеющий значение «0», если прерывание по причинеLзапрещено и значение «1», если прерывание разрешено. Маска М хранится в процессоре и загружается командой: «Установить маску М». Выполнение этой команды производится путем передачи слова из ячейки «А» ОП в регистр процессора, хранящий маску.

Операция прерывания.

Операция прерывания сводится к изменению значений слов состояния программы (ССП):

АК – адрес следующей команды, сформированный после окончания операции.

ПР – признак результата, определяющий знаки результата или состояния ВУ.

1,…,L– сигнал прерывания.

М – маска защиты от прерываний

J– код причины прерывания.

ССП содержит следующую информацию:

АК

пр

j

М

…….

ССП обычно занимает несколько ячеек ОП: 2,4,8 …

Операция прерывания реализуется следующим образом:

  1. ССПi характеризующее статус процессора в момент прерывания записывается в область ССПi, при этом в память передаются состояния всех регистров процессора или как минимум:

  2. Из области ССПJ загружается значение ССПJ , определяющее состояние процессора на момент прерывания.

  3. Управление передается команде с адресом АКJ , определяющее начало программы – преемника.

Обработка ССП обычно организуется по типу причин прерывания и обеспечивается супервизором:

Количество ССП определяется из соображений, обеспечивающих высокую производительность компьютера. При возникновении причины прерывания выполняются следующие действия:

  1. Запись в область старых ССП состояния процессора.

  2. Загрузка из области новых ССП слова состояния программы, соответствующего коду причины прерывания.

  3. передача управления по адресу АК, указанному в новом ССП.

В новом ССП адрес команды может относиться как к прикладной программе, так и к программе супервизора, обрабатывающей заданное прерывание.